java.lang.Object
com.espertech.esper.common.internal.epl.expression.core.ExprNodeBase
All Implemented Interfaces:
ExprNode, ExprNodeRenderable, ExprValidator
Direct Known Subclasses:
ExprAggregateNodeBase, ExprAggregateNodeGroupKey, ExprAndNodeImpl, ExprAppDotMethodImpl, ExprArrayNode, ExprBetweenNodeImpl, ExprBitWiseNode, ExprCaseNode, ExprCastNode, ExprCoalesceNode, ExprConcatNode, ExprConstantNodeImpl, ExprContextPropertyNodeImpl, ExprCurrentEvaluationContextNode, ExprDeclaredNodeImpl, ExprDotNodeAggregationMethodRootNode, ExprDotNodeImpl, ExprEqualsAllAnyNode, ExprEqualsNodeImpl, ExprEvalSystemProperty, ExprEventIdentityEqualsNode, ExprFilterReboolValueNode, ExprGroupingIdNode, ExprGroupingNode, ExprIdentNodeImpl, ExprInNodeImpl, ExprInstanceofNode, ExprIStreamNode, ExprLambdaGoesNode, ExprLikeNode, ExprMathNode, ExprMinMaxRowNode, ExprNamedParameterNodeImpl, ExprNewInstanceNode, ExprNewStructNode, ExprNodeScript, ExprNodeValidated, ExprNotNode, ExprNumberSetCronParam, ExprNumberSetFrequency, ExprNumberSetList, ExprNumberSetRange, ExprOrderedExpr, ExprOrNode, ExprPlugInSingleRowNode, ExprPreviousMatchRecognizeNode, ExprPreviousNode, ExprPriorNode, ExprPropertyExistsNode, ExprRegexpNode, ExprRelationalOpAllAnyNode, ExprRelationalOpNodeImpl, ExprStreamUnderlyingNodeImpl, ExprSubselectNode, ExprSubstitutionNode, ExprTableAccessNode, ExprTableIdentNode, ExprTableResetRowAggNode, ExprTimePeriodImpl, ExprTimestampNode, ExprTypedNoEvalNode, ExprTypeofNode, ExprVariableNodeImpl, ExprWildcardImpl

public abstract class ExprNodeBase extends Object implements ExprNode
Superclass for filter nodes in a filter expression tree. Allow validation against stream event types and evaluation of events against filter tree.
  • Constructor Details

    • ExprNodeBase

      public ExprNodeBase()
      Constructor creates a list of child nodes.
  • Method Details

    • toPrecedenceFreeEPL

      public abstract void toPrecedenceFreeEPL(StringWriter writer, ExprNodeRenderableFlags flags)
    • accept

      public void accept(ExprNodeVisitor visitor)
      Description copied from interface: ExprNode
      Accept the visitor. The visitor will first visit the parent then visit all child nodes, then their child nodes.

      The visitor can decide to skip child nodes by returning false in isVisit.

      Specified by:
      accept in interface ExprNode
      Parameters:
      visitor - to visit each node and each child node.
    • accept

      public void accept(ExprNodeVisitorWithParent visitor)
      Description copied from interface: ExprNode
      Accept the visitor. The visitor will first visit the parent then visit all child nodes, then their child nodes.

      The visitor can decide to skip child nodes by returning false in isVisit.

      Specified by:
      accept in interface ExprNode
      Parameters:
      visitor - to visit each node and each child node.
    • acceptChildnodes

      public void acceptChildnodes(ExprNodeVisitorWithParent visitor, ExprNode parent)
      Description copied from interface: ExprNode
      Accept a visitor that receives both parent and child node.
      Specified by:
      acceptChildnodes in interface ExprNode
      Parameters:
      visitor - to apply
      parent - node
    • addChildNode

      public final void addChildNode(ExprNode childNode)
      Description copied from interface: ExprNode
      Adds a child node.
      Specified by:
      addChildNode in interface ExprNode
      Parameters:
      childNode - is the child evaluation tree node to add
    • addChildNodes

      public final void addChildNodes(Collection<ExprNode> childNodeColl)
      Description copied from interface: ExprNode
      Adds child nodes.
      Specified by:
      addChildNodes in interface ExprNode
      Parameters:
      childNodeColl - are the child evaluation tree node to add
    • getChildNodes

      public final ExprNode[] getChildNodes()
      Description copied from interface: ExprNode
      Returns list of child nodes.
      Specified by:
      getChildNodes in interface ExprNode
      Returns:
      list of child nodes
    • replaceUnlistedChildNode

      public void replaceUnlistedChildNode(ExprNode nodeToReplace, ExprNode newNode)
      Specified by:
      replaceUnlistedChildNode in interface ExprNode
    • addChildNodeToFront

      public void addChildNodeToFront(ExprNode childNode)
    • setChildNodes

      public void setChildNodes(ExprNode... nodes)
      Specified by:
      setChildNodes in interface ExprNode
    • setChildNode

      public void setChildNode(int index, ExprNode newNode)
      Specified by:
      setChildNode in interface ExprNode
    • toEPL

      public void toEPL(StringWriter writer, ExprPrecedenceEnum parentPrecedence, ExprNodeRenderableFlags flags)
      Specified by:
      toEPL in interface ExprNodeRenderable
    • checkValidated

      protected static void checkValidated(ExprForge forge)
    • checkValidatedException

      protected static IllegalStateException checkValidatedException()