pub struct Parser { /* private fields */ }Expand description
SQL Parser using Pratt parsing algorithm
Implementations§
Source§impl Parser
impl Parser
Sourcepub fn parse_program(&mut self) -> Result<Program, ParseErrors>
pub fn parse_program(&mut self) -> Result<Program, ParseErrors>
Parse the input and return a Program
Sourcepub fn errors(&self) -> &[ParseError]
pub fn errors(&self) -> &[ParseError]
Get collected errors
Source§impl Parser
impl Parser
Sourcepub fn parse_expression(&mut self, precedence: Precedence) -> Option<Expression>
pub fn parse_expression(&mut self, precedence: Precedence) -> Option<Expression>
Parse an expression with the given precedence
Sourcepub fn parse_expression_list(&mut self) -> Vec<Expression>
pub fn parse_expression_list(&mut self) -> Vec<Expression>
Parse an expression list (comma-separated)
Sourcepub fn parse_group_by_clause(&mut self) -> GroupByClause
pub fn parse_group_by_clause(&mut self) -> GroupByClause
Parse a GROUP BY clause with optional ROLLUP/CUBE/GROUPING SETS modifier
Sourcepub fn parse_window_definitions(&mut self) -> Vec<WindowDefinition>
pub fn parse_window_definitions(&mut self) -> Vec<WindowDefinition>
Parse WINDOW clause definitions (WINDOW w AS (…), w2 AS (…))
Sourcepub fn parse_order_by_expression(&mut self) -> Option<OrderByExpression>
pub fn parse_order_by_expression(&mut self) -> Option<OrderByExpression>
Parse an ORDER BY expression
Sourcepub fn parse_order_by_expressions(&mut self) -> Vec<OrderByExpression>
pub fn parse_order_by_expressions(&mut self) -> Vec<OrderByExpression>
Parse ORDER BY expressions (comma-separated)
Source§impl Parser
impl Parser
Sourcepub fn parse_identifier_list(&mut self) -> Vec<Identifier>
pub fn parse_identifier_list(&mut self) -> Vec<Identifier>
Parse an identifier list (allows keywords as identifiers for CTE column aliases)
Source§impl Parser
impl Parser
Sourcepub fn parse_select_statement(&mut self) -> Option<SelectStatement>
pub fn parse_select_statement(&mut self) -> Option<SelectStatement>
Parse a SELECT statement
Auto Trait Implementations§
impl Freeze for Parser
impl RefUnwindSafe for Parser
impl Send for Parser
impl Sync for Parser
impl Unpin for Parser
impl UnsafeUnpin for Parser
impl UnwindSafe for Parser
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