Class ExprSubstitutionNode
java.lang.Object
com.espertech.esper.common.internal.epl.expression.core.ExprNodeBase
com.espertech.esper.common.internal.epl.expression.core.ExprSubstitutionNode
- All Implemented Interfaces:
ExprForge
,ExprNode
,ExprNodeDeployTimeConst
,ExprNodeRenderable
,ExprValidator
public class ExprSubstitutionNode
extends ExprNodeBase
implements ExprForge, ExprNodeDeployTimeConst
Represents a substitution value to be substituted in an expression tree, not valid for any purpose of use
as an expression, however can take a place in an expression tree.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncodegenGetDeployTimeConstValue
(CodegenClassScope classScope) boolean
equalsNode
(ExprNode node, boolean ignoreStreamPrefix) Return true if a expression node semantically equals the current node, or false if not.evaluate
(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext exprEvaluatorContext) evaluateCodegen
(EPTypeClass requiredType, CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope) getForge()
Returns the substitution parameter name (or null if by-index).Returns precedence.void
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
-
ExprSubstitutionNode
-
-
Method Details
-
validate
- Specified by:
validate
in interfaceExprValidator
- Throws:
ExprValidationException
-
getOptionalName
Returns the substitution parameter name (or null if by-index).- Returns:
- name
-
evaluate
public Object evaluate(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext exprEvaluatorContext) -
getExprEvaluator
- Specified by:
getExprEvaluator
in interfaceExprForge
-
getForge
-
toPrecedenceFreeEPL
- Specified by:
toPrecedenceFreeEPL
in classExprNodeBase
-
getPrecedence
Description copied from interface:ExprNode
Returns precedence.- Specified by:
getPrecedence
in interfaceExprNode
- 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.
- Specified by:
equalsNode
in interfaceExprNode
- 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
-
evaluateCodegen
public CodegenExpression evaluateCodegen(EPTypeClass requiredType, CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope) - Specified by:
evaluateCodegen
in interfaceExprForge
-
codegenGetDeployTimeConstValue
- Specified by:
codegenGetDeployTimeConstValue
in interfaceExprNodeDeployTimeConst
-
getEvaluationType
- Specified by:
getEvaluationType
in interfaceExprForge
-
getForgeConstantType
- Specified by:
getForgeConstantType
in interfaceExprForge
-
getForgeRenderable
- Specified by:
getForgeRenderable
in interfaceExprForge
-
getOptionalType
-
getResolvedType
-
renderForFilterPlan
- Specified by:
renderForFilterPlan
in interfaceExprNodeDeployTimeConst
-