1#![doc = include_str!("../README.md")]
2#![forbid(unsafe_code)]
3
4mod arena;
5mod classify;
6mod eval;
7mod handle;
8mod linear;
9mod ops;
10mod quadratic;
11mod render;
12mod simplify;
13mod visit;
14
15pub use arena::{ExprArena, ExprId, ExprNode, ParamId, VarId};
16pub use classify::{ExprClass, classify};
17pub use eval::{EvalContext, EvalError, evaluate};
18pub use handle::Expr;
19pub use linear::{LinearTerms, SignedExpr, describe_nonlinear_term, extract_linear, split_linear};
20pub use ops::dot;
21pub use quadratic::{QuadraticTerms, extract_quadratic};
22pub use render::{render_expr, render_linear_terms};
23pub use simplify::simplify;
24pub use visit::{Visitor, walk};