Class ExprMathNode
java.lang.Object
com.espertech.esper.common.internal.epl.expression.core.ExprNodeBase
com.espertech.esper.common.internal.epl.expression.ops.ExprMathNode
- All Implemented Interfaces:
ExprNode
,ExprNodeRenderable
,ExprValidator
Represents a simple Math (+/-/divide/*) in a filter expression tree.
-
Constructor Summary
ConstructorDescriptionExprMathNode
(MathArithTypeEnum mathArithTypeEnum, boolean isIntegerDivision, boolean isDivisionByZeroReturnsNull) Ctor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
equalsNode
(ExprNode node, boolean ignoreStreamPrefix) Return true if a expression node semantically equals the current node, or false if not.getForge()
Returns the type of math.Returns precedence.boolean
void
toPrecedenceFreeEPL
(StringWriter writer, ExprNodeRenderableFlags flags) validate
(ExprValidationContext validationContext) Methods inherited from class com.espertech.esper.common.internal.epl.expression.core.ExprNodeBase
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, checkValidated, checkValidatedException, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
-
Constructor Details
-
ExprMathNode
public ExprMathNode(MathArithTypeEnum mathArithTypeEnum, boolean isIntegerDivision, boolean isDivisionByZeroReturnsNull) Ctor.- Parameters:
mathArithTypeEnum
- - type of mathisIntegerDivision
- - false for division returns double, true for using Java-standard integer divisionisDivisionByZeroReturnsNull
- - false for division-by-zero returns infinity, true for null
-
-
Method Details
-
getExprEvaluator
-
getForge
-
validate
- Throws:
ExprValidationException
-
isConstantResult
public boolean isConstantResult() -
toPrecedenceFreeEPL
- Specified by:
toPrecedenceFreeEPL
in classExprNodeBase
-
getPrecedence
Description copied from interface:ExprNode
Returns precedence.- Returns:
- precedence
-
equalsNode
Description copied from interface:ExprNode
Return true if a expression node semantically equals the current node, or false if not.Concrete implementations should compare the type and any additional information that impact the evaluation of a node.
- Parameters:
node
- to compare toignoreStreamPrefix
- when the equals-comparison can ignore prefix of event properties- Returns:
- true if semantically equal, or false if not equals
-
getMathArithTypeEnum
Returns the type of math.- Returns:
- math type
-