Interface  Description 

SerializableExpression.Element 
interface used in internal representation of expression

Class  Description 

DeepCopyVisitor 
A Visitor which returns an exact copy of the tree.

DoNothingVisitor 
A Visitor which visits each node of a expression tree and does nothing.

ExpressionConsolidator 
Consolidates nested addition and multiplication to produce nary operators.

ImportationVisitor 
Imports an expression from one Jep instance into another.

PostfixEvaluator 
Evaluation component that avoids excessive use of the stack for large
expressions.

PostfixTreeWalker 
Base class for routines which use a non recursive tree walker strategy.

PrefixTreeDumper 
Dumps the contents of a tree to a specified stream, or to standard output.

PrefixTreeWalker 
Base class for routines which use a non recursive tree walker strategy.

SerializableExpression 
A serializable representation of an expression.

SerializableExpression.Constant  
SerializableExpression.Function  
SerializableExpression.Operator  
SerializableExpression.Variable  
SubstitutionVisitor 
Allows substitution of a given variable with an expression tree.

TreeAnalyzer 
Analyze an expression, counting the number of nodes of each type, and recording which variables,
functions and operators occurred in the expression.

Expression tree traversal classes.
These classes implement various methods of traversing trees representing equations.
For very large equations with 10,000+ nodes the standard ParserVisitor
class
can encounter problems with stack overflows due to recursions. The PostfixTreeWalker
offers a base class for
a traversal strategy which minimises the number of stack frames
used and the PostfixEvaluator
is an evaluator which uses this strategy. These methods visit each node in postfix fashion
hence for 1+cos(x)
the nodes are visited in the order
1, x, cos, +
.
PrefixTreeWalker
is similar but visits nodes in a prefix fashion
for 1+cos(x)
the nodes are visited in the order
+, 1, cos, x
.
DoNothingVisitor
and DeepCopyVisitor
are two base classes for classes which manipulate
expressions using a standard recursive traversal. DoNothingVisitor
visits each node
in turn performing no action and returning the node.
DeepCopyVisitor
visits each node returning a copy of that node.
Copyright © 2018 Singular Systems http://www.singularsys.com/jep