maat::ExprSimplifier class

An expression simplifier can be used to simplify expressions. It holds a list of simplification functions that can be applied successively to the expression in onrder to simplify it

❱   Constructors, destructors, conversion operators

ExprSimplifier()
Constructor.

❱   Public functions

auto simplify(Expr e, bool mark_as_simplified = true) -> Expr
Simplify the expression 'e'.

void add(ExprSimplifierFunc func)
Add a simplifier function to the expression simplifier.

void add(RecExprSimplifierFunc func)
Add a recursive simplifier function to the expression simplifier.

❱   Protected functions

auto run_simplifiers(Expr e) -> Expr
Run all simplifier functions once on expression 'e' and return the resulting expression.

❱   Protected variables

unsigned int _id
Unique ID of the simplifier instance.