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