pub trait ParsePrimary {
// Required methods
fn current_token(&self) -> &Token;
fn advance(&mut self);
fn consume(&mut self, expected: Token) -> Result<(), String>;
fn parse_case_expression(&mut self) -> Result<SqlExpression, String>;
fn parse_function_args(
&mut self,
) -> Result<(Vec<SqlExpression>, bool), String>;
fn parse_window_spec(&mut self) -> Result<WindowSpec, String>;
fn parse_logical_or(&mut self) -> Result<SqlExpression, String>;
fn parse_comparison(&mut self) -> Result<SqlExpression, String>;
fn parse_expression_list(&mut self) -> Result<Vec<SqlExpression>, String>;
fn parse_subquery(&mut self) -> Result<SelectStatement, String>;
}Expand description
Trait that parsers must implement to use primary expression parsing
Required Methods§
fn current_token(&self) -> &Token
fn advance(&mut self)
fn consume(&mut self, expected: Token) -> Result<(), String>
fn parse_case_expression(&mut self) -> Result<SqlExpression, String>
fn parse_function_args(&mut self) -> Result<(Vec<SqlExpression>, bool), String>
fn parse_window_spec(&mut self) -> Result<WindowSpec, String>
fn parse_logical_or(&mut self) -> Result<SqlExpression, String>
fn parse_comparison(&mut self) -> Result<SqlExpression, String>
fn parse_expression_list(&mut self) -> Result<Vec<SqlExpression>, String>
fn parse_subquery(&mut self) -> Result<SelectStatement, String>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".