Package com.singularsys.jep
Interface Evaluator
- All Superinterfaces:
JepComponent,Serializable
- All Known Implementing Classes:
FastEvaluator,FastEvaluator3_4,FastEvaluator3_5,MonitoringEvaluator,PostfixEvaluator,RealEvaluator,RpEvaluator,StackCheckingFastEvaluator,StandardEvaluator,StreamEvaluator,StructuredEvaluator,ThreadSafeEvaluator,UncheckedEvaluator,XEvaluator,XMonitoringEvaluator
Defines a method which can be used to evaluate a part of a node-tree.
It is passed to classes that use CallbackEvaluatorI
which need greater control over how they are evaluated.
- Author:
- Rich Morris Created on 22-Apr-2005
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault Objecteval(NodeFactory nf, String name, PostfixMathCommandI pfmc, Node... children) Evaluates a function with the given children.Evaluates a sub expression.Main entry point, evaluates a node and returns and object with the value of the node.Methods inherited from interface com.singularsys.jep.JepComponent
getLightWeightInstance, init
-
Method Details
-
evaluate
Main entry point, evaluates a node and returns and object with the value of the node.- Parameters:
node- node to evaluate- Returns:
- value after evaluation
- Throws:
EvaluationException- if errors occur during evaluation;
-
eval
Evaluates a sub expression. This method can be called by PostfixMathCommands which implementCallbackEvaluationI- Parameters:
node- node to evaluate- Returns:
- The value after evaluating the sub expression.
- Throws:
EvaluationException- if errors occur during evaluation;
-
eval
default Object eval(NodeFactory nf, String name, PostfixMathCommandI pfmc, Node... children) throws EvaluationException Evaluates a function with the given children. If the function is one ofUnaryFunction,BinaryFunction,NaryFunction,NaryBinaryFunction, orNullaryFunctionthen the appropriate eval method is called. Otherwise a temporary node is created with the given function and children and evaluated this this evaluator. This allows functions with special evaluations behaviour likeCallbackEvaluationIto be evaluated correctly.- Parameters:
nf- NodeFactory to use to create a temporary nodename- name of the functionpfmc- the function to evaluatechildren- the children of the node to evaluate- Returns:
- The value after evaluating the function.
- Throws:
EvaluationException- if the pfmc is null or the number of children is not valid for the function.
-