Package jmri.jmrit.logixng.util.parser
Interface ExpressionNode
- All Known Subinterfaces:
ExpressionNodeWithParameter
- All Known Implementing Classes:
ExpressionNodeArithmeticOperator,ExpressionNodeArray,ExpressionNodeAssignmentOperator,ExpressionNodeBinaryOperator,ExpressionNodeBooleanOperator,ExpressionNodeComparingOperator,ExpressionNodeComplex,ExpressionNodeFalse,ExpressionNodeFloatingNumber,ExpressionNodeFunction,ExpressionNodeIdentifier,ExpressionNodeIncreaseDecreaseOperator,ExpressionNodeInstanceVariable,ExpressionNodeIntegerNumber,ExpressionNodeMap,ExpressionNodeMethod,ExpressionNodeString,ExpressionNodeTernaryOperator,ExpressionNodeTrue
public interface ExpressionNode
A parsed expression
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidassignValue(SymbolTable symbolTable, Object value) Assign a value to this expressioncalculate(SymbolTable symbolTable) Calculate the expressiondefault booleanCan this expression be assigned a value?Get a String that defines this expression node.
-
Method Details
-
calculate
Calculate the expression- Parameters:
symbolTable- the symbol table- Returns:
- the result
- Throws:
JmriException- if an error occurs
-
canBeAssigned
Can this expression be assigned a value?- Returns:
- true if it's possible to assign a value to this expression, false otherwise
-
assignValue
Assign a value to this expression- Parameters:
symbolTable- the symbol tablevalue- the value to assign- Throws:
JmriException- if an error occurs
-
getDefinitionString
Get a String that defines this expression node.- Returns:
- the string
-