My Project
|
#include <SDBMExpr.h>
Public Member Functions | |
Result | visit (SDBMExpr expr) |
Visit the given SDBM expression, dispatching to kind-specific functions. More... | |
void | walkPreorder (SDBMExpr expr) |
void | walkPostorder (SDBMExpr expr) |
Protected Member Functions | |
void | visitSum (SDBMSumExpr) |
Default visitors do nothing. More... | |
void | visitDiff (SDBMDiffExpr) |
void | visitStripe (SDBMStripeExpr) |
void | visitDim (SDBMDimExpr) |
void | visitSymbol (SDBMSymbolExpr) |
void | visitNeg (SDBMNegExpr) |
void | visitConstant (SDBMConstantExpr) |
Result | visitDirect (SDBMDirectExpr expr) |
Result | visitTerm (SDBMTermExpr expr) |
Result | visitInput (SDBMInputExpr expr) |
Result | visitVarying (SDBMVaryingExpr expr) |
template<bool isPreorder> | |
void | walk (SDBMExpr expr) |
A visitor class for SDBM expressions. Calls the kind-specific function depending on the kind of expression it visits.
|
inline |
Visit the given SDBM expression, dispatching to kind-specific functions.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
Default implementation of visitDirect dispatches to the dedicated for sums or delegates to visitTerm for the other expression kinds. Concrete visitors can overload it.
|
inlineprotected |
Default implementation of visitInput dispatches to the special functions for dimensions or symbols. Concrete visitors can override it to visit all variables instead.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
Default visitors do nothing.
|
inlineprotected |
|
inlineprotected |
Default implementation of visitTerm dispatches to the special functions for stripes and other variables. Concrete visitors can override it.
|
inlineprotected |
Default implementation of visitVarying dispatches to the special functions for variables and negations thereof. Concrete visitors can override it to visit all variables and negations instead.
|
inlineprotected |
|
inline |
Traverse the SDBM expression tree calling visit
on each node in depth-first postorder.
|
inline |
Traverse the SDBM expression tree calling visit
on each node in depth-first preorder.