raekna_compute/
errors.rs

1use raekna_common::{expression::Literal, function_name::FunctionName};
2
3pub type ComputeResult<T> = Result<T, ComputeError>;
4
5#[derive(Debug, PartialEq, Eq)]
6pub enum ComputeError {
7    UnknownVariable(String),
8    VariableNameTaken(String),
9    FunctionArgumentCount {
10        function_name: String,
11        expected_argument_count: usize,
12        supplied_argument_count: usize,
13    },
14    ResultTooBig(FunctionName, Vec<Literal>),
15    InvalidFactorialArgument(Literal),
16    InvalidSquareRoot(Literal),
17    DivisionByZero,
18    InvalidTruncatePrecision(Literal),
19}