mod eval;
mod lexer;
mod parser;

pub type FynsulFunction = Box<dyn Fn(f64) -> Result<f64, EvalError>>;
pub type CreatedFunction = Result<FynsulFunction, CreationError>;

pub use crate::function_parser::eval::ast_to_func;
pub use crate::function_parser::eval::{CreationError, EvalError};
pub use crate::function_parser::lexer::Lexer;
pub use crate::function_parser::lexer::LexerError;
pub use crate::function_parser::lexer::Token;
pub use crate::function_parser::parser::ParseError;
pub use crate::function_parser::parser::parse_br;
