pub struct Parser<'a> { /* private fields */ }Expand description
A parser for EventQL expressions and queries.
The parser takes a stream of tokens and builds an abstract syntax tree (AST) representing the structure of the EventQL query or expression.
Implementations§
Source§impl<'a> Parser<'a>
impl<'a> Parser<'a>
Sourcepub fn new(arena: &'a mut Arena, input: &'a [Token<'a>]) -> Self
pub fn new(arena: &'a mut Arena, input: &'a [Token<'a>]) -> Self
Creates a new parser from a slice of tokens.
§Example
use eventql_parser::Session;
let session = Session::builder().build();
let tokens = session.tokenize("1 + 2").unwrap();Sourcepub fn parse_expr(&mut self) -> ParseResult<ExprRef>
pub fn parse_expr(&mut self) -> ParseResult<ExprRef>
Parses a single expression from the token stream.
This method can be used to parse individual expressions rather than complete queries. It’s useful for testing or for parsing expression fragments.
§Returns
Returns the parsed expression, or a parse error if the tokens don’t form a valid expression.
§Example
use eventql_parser::Session;
let session = Session::builder().build();
let tokens = session.tokenize("NOW()").unwrap();Auto Trait Implementations§
impl<'a> Freeze for Parser<'a>
impl<'a> RefUnwindSafe for Parser<'a>
impl<'a> Send for Parser<'a>
impl<'a> Sync for Parser<'a>
impl<'a> Unpin for Parser<'a>
impl<'a> !UnwindSafe for Parser<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more