Class StructuredEvaluator
- java.lang.Object
-
- com.singularsys.extensions.structure.StructuredEvaluator
-
- All Implemented Interfaces:
Evaluator,JepComponent,java.io.Serializable
public class StructuredEvaluator extends java.lang.Object implements Evaluator
An evaluator which works with structured programming.- Since:
- Jep 3.5 / Extensions 2.0
- Author:
- Richard Morris
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description StructuredEvaluator(Evaluator rootEval)Create an evaluator for use with structured programming.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objecteval(Node node)Evaluate a node.java.lang.Objectevaluate(Node node)Main entry point, evaluates a node and returns and object with the value of the node.JepComponentgetLightWeightInstance()Gets a light-weight instance suitable for using in multiple threads.voidinit(Jep jep)Initialize the component.
-
-
-
Constructor Detail
-
StructuredEvaluator
public StructuredEvaluator(Evaluator rootEval)
Create an evaluator for use with structured programming.- Parameters:
rootEval- the evaluator used for simple non-structured expressions- See Also:
StructureNode
-
-
Method Detail
-
evaluate
public java.lang.Object evaluate(Node node) throws EvaluationException
Description copied from interface:EvaluatorMain entry point, evaluates a node and returns and object with the value of the node.- Specified by:
evaluatein interfaceEvaluator- Parameters:
node- node to evaluate- Returns:
- value after evaluation
- Throws:
EvaluationException- if errors occur during evaluation;
-
eval
public java.lang.Object eval(Node node) throws EvaluationException
Evaluate a node. If the node is an instance ofStructureNodecall itsStructureNode.eval(Evaluator)method, otherwise use the rootEvaluator.- Specified by:
evalin interfaceEvaluator- Parameters:
node- node to evaluate- Returns:
- The value after evaluating the sub expression.
- Throws:
EvaluationException- if errors occur during evaluation;
-
getLightWeightInstance
public JepComponent getLightWeightInstance()
Description copied from interface:JepComponentGets a light-weight instance suitable for using in multiple threads.- Specified by:
getLightWeightInstancein interfaceJepComponent- Returns:
- either an new instance, null or 'this'.
-
init
public void init(Jep jep)
Description copied from interface:JepComponentInitialize the component. This methods is called whenever a component is added to Jep. Hence it allows components to keep track of the other components they may rely on.- Specified by:
initin interfaceJepComponent- Parameters:
jep- the current Jep instance
-
-