24 lines
388 B
Rust
24 lines
388 B
Rust
use crate::math::types::Expression;
|
|
|
|
#[cfg(test)]
|
|
mod tests;
|
|
|
|
mod display;
|
|
mod eval;
|
|
mod functions;
|
|
mod lexer;
|
|
mod math_constants;
|
|
mod parser;
|
|
|
|
pub mod types;
|
|
|
|
pub fn parse(source: &str) -> Expression {
|
|
let lexer = lexer::from(source);
|
|
let mut parser = parser::from(lexer.collect());
|
|
parser.parse()
|
|
}
|
|
|
|
pub fn eval(expr: Expression) -> Expression {
|
|
eval::eval_expr(expr)
|
|
}
|