raekna_parser/errors.rs
1use nom::error::Error;
2use raekna_common::expression::Expression;
3
4use crate::lexer::Operator;
5
6pub type ParserResult<T> = Result<T, ParserError>;
7
8#[derive(Debug)]
9pub enum ParserError {
10 EmptyExpression,
11 InvalidExpression {
12 expressions: Vec<Option<Expression>>,
13 operators: Vec<Operator>,
14 },
15 InvalidSign(char),
16 UnknownFunctionName(String),
17 InvalidVariableDefinition(String),
18 NomError(nom::Err<Error<()>>),
19}