# Uses of Interface
org.apache.cayenne.exp.parser.Node

Packages that use Node
Package
Description
org.apache.cayenne.exp.parser
Contains expression parser and other expression internals.

- ## Uses of Node in org.apache.cayenne.exp.parser

  Classes in org.apache.cayenne.exp.parser that implement Node
  Modifier and Type
  Class
  Description
  `class`
  `AggregateConditionNode`
  Superclass of aggregated conditional nodes such as NOT, AND, OR.
  `class`
  `ASTAbs`
  `class`
  `ASTAdd`
  "Add" Expression.
  `class`
  `ASTAggregateFunctionCall`
  Base class for all aggregation functions expressions It's more like marker interface for now.
  `class`
  `ASTAll`
  `class`
  `ASTAnd`
  "And" expression.
  `class`
  `ASTAny`
  `class`
  `ASTAsterisk`
  Asterisk operator for COUNT(*) expression.
  `class`
  `ASTAvg`
  `class`
  `ASTBetween`
  "Between" expression.
  `class`
  `ASTBitwiseAnd`
  Bitwise conjunction (AND or '&') expression
  `class`
  `ASTBitwiseLeftShift`
  Bitwise left shift '<<' operation.
  `class`
  `ASTBitwiseNot`
  Bitwise negation (NOT i.e.
  `class`
  `ASTBitwiseOr`
  Bitwise disjunction (OR or '|') expression.
  `class`
  `ASTBitwiseRightShift`
  Bitwise right shift '>>' operation.
  `class`
  `ASTBitwiseXor`
  Bitwise exclusive disjunction (XOR or '^') operation.
  `class`
  `ASTCaseWhen`
  "CASE-WHEN" expression root node.
  `class`
  `ASTConcat`
  `class`
  `ASTCount`
  `class`
  `ASTCurrentDate`
  `class`
  `ASTCurrentTime`
  `class`
  `ASTCurrentTimestamp`
  `class`
  `ASTCustomAggregate`
  Class for custom aggregation functions expressions.
  `class`
  `ASTCustomFunction`
  `class`
  `ASTCustomOperator`
  `class`
  `ASTDbIdPath`
  `class`
  `ASTDbPath`
  Path expression traversing DB relationships and attributes.
  `class`
  `ASTDistinct`
  `class`
  `ASTDivide`
  "Divide" expression.
  `class`
  `ASTElse`
  "ELSE" part of the case-when expression.
  `class`
  `ASTEnclosingObject`
  `class`
  `ASTEnum`
  Scalar node that represents constant enumeration value.
  `class`
  `ASTEqual`
  "Equal To" expression.
  `class`
  `ASTExists`
  `class`
  `ASTExtract`
  `class`
  `ASTFalse`
  Boolean false expression element Notice that there is one ASTTrue and one ASTFalse instead of a ASTBoolean with a Boolean value.
  `class`
  `ASTFullObject`
  `class`
  `ASTFunctionCall`
  `class`
  `ASTGreater`
  "Greater Than" expression.
  `class`
  `ASTGreaterOrEqual`
  "Greater Than Or Equal To" expression.
  `class`
  `ASTIn`
  "In" expression.
  `class`
  `ASTLength`
  `class`
  `ASTLess`
  "Less Then" expression.
  `class`
  `ASTLessOrEqual`
  "Less than or equal to" expression.
  `class`
  `ASTLike`
  "Like" expression.
  `class`
  `ASTLikeIgnoreCase`
  "Case insensitive like" expression.
  `class`
  `ASTList`
  A leaf expression representing an immutable collection of values.
  `class`
  `ASTLocate`
  `class`
  `ASTLower`
  `class`
  `ASTMax`
  `class`
  `ASTMin`
  `class`
  `ASTMod`
  `class`
  `ASTMultiply`
  "Multiply" expression.
  `class`
  `ASTNamedParameter`
  A named expression parameter.
  `class`
  `ASTNegate`
  "Negate" expression.
  `class`
  `ASTNot`
  "Not" expression.
  `class`
  `ASTNotBetween`
  "Not Between" expression.
  `class`
  `ASTNotEqual`
  "Not equal to" expression.
  `class`
  `ASTNotExists`
  `class`
  `ASTNotIn`
  "Not In" expression.
  `class`
  `ASTNotLike`
  "Not Like" expression.
  `class`
  `ASTNotLikeIgnoreCase`
  "Not like, ignore case" expression.
  `class`
  `ASTObjPath`
  `class`
  `ASTOr`
  "Or" expression.
  `class`
  `ASTPath`
  Generic path expression.
  `class`
  `ASTScalar`
  A scalar value wrapper expression.
  `class`
  `ASTSqrt`
  `class`
  `ASTSubquery`
  `class`
  `ASTSubstring`
  `class`
  `ASTSubtract`
  "Subtract" expression.
  `class`
  `ASTSum`
  `class`
  `ASTThen`
  "THEN" part of the case-when expression.
  `class`
  `ASTTrim`
  `class`
  `ASTTrue`
  Boolean true expression element Notice that there is one ASTTrue and one ASTFalse instead of a ASTBoolean with a Boolean value.
  `class`
  `ASTUpper`
  `class`
  `ASTWhen`
  "WHEN" part of the case-when expression.
  `class`
  `ConditionNode`
  Superclass of conditional expressions.
  `class`
  `EvaluatedBitwiseNode`
  `class`
  `EvaluatedMathNode`
  `class`
  `EvaluatedNode`
  `class`
  `PatternMatchNode`
  Superclass of pattern matching nodes.
  `class`
  `SimpleNode`
  Superclass of AST* expressions that implements Node interface defined by JavaCC framework.
  Fields in org.apache.cayenne.exp.parser declared as Node
  Modifier and Type
  Field
  Description
  `protected Node[]`
  SimpleNode.`children`
  `protected Node`
  SimpleNode.`parent`
  Methods in org.apache.cayenne.exp.parser that return Node
  Modifier and Type
  Method
  Description
  `Node`
  Node.`jjtGetChild(int i)`
  This method returns a child node.
  `Node`
  SimpleNode.`jjtGetChild(int i)`
  `Node`
  Node.`jjtGetParent()`
  `Node`
  SimpleNode.`jjtGetParent()`
  `Node`
  JJTExpressionParserState.`peekNode()`
  `Node`
  JJTExpressionParserState.`popNode()`
  `Node`
  JJTExpressionParserState.`rootNode()`
  `protected Node`
  SimpleNode.`wrapChild(Object child)`
  Methods in org.apache.cayenne.exp.parser with parameters of type Node
  Modifier and Type
  Method
  Description
  `void`
  JJTExpressionParserState.`clearNodeScope(Node n)`
  `void`
  JJTExpressionParserState.`closeNodeScope(Node n, boolean condition)`
  `void`
  JJTExpressionParserState.`closeNodeScope(Node n, int num)`
  `protected boolean`
  AggregateConditionNode.`isValidParent(Node n)`
  `protected boolean`
  ASTAll.`isValidParent(Node n)`
  `protected boolean`
  ASTAny.`isValidParent(Node n)`
  `protected boolean`
  ASTExists.`isValidParent(Node n)`
  `protected boolean`
  ASTNotExists.`isValidParent(Node n)`
  `protected boolean`
  ConditionNode.`isValidParent(Node n)`
  `protected boolean`
  SimpleNode.`isValidParent(Node n)`
  Additional parent check that we can't handle properly in the grammar By default it just returns true.
  `void`
  AggregateConditionNode.`jjtAddChild(Node n, int i)`
  `void`
  ASTCustomAggregate.`jjtAddChild(Node n, int i)`
  `void`
  ASTCustomFunction.`jjtAddChild(Node n, int i)`
  `void`
  ASTCustomOperator.`jjtAddChild(Node n, int i)`
  `void`
  ASTExists.`jjtAddChild(Node n, int i)`
  `void`
  Node.`jjtAddChild(Node n, int i)`
  This method tells the node to add its argument to the node's list of children.
  `void`
  PatternMatchNode.`jjtAddChild(Node n, int i)`
  `void`
  SimpleNode.`jjtAddChild(Node n, int i)`
  `void`
  ASTExists.`jjtSetParent(Node n)`
  `void`
  ASTWhen.`jjtSetParent(Node n)`
  `void`
  Node.`jjtSetParent(Node n)`
  This pair of methods are used to inform the node of its parent.
  `void`
  SimpleNode.`jjtSetParent(Node n)`
  `void`
  JJTExpressionParserState.`openNodeScope(Node n)`
  `void`
  JJTExpressionParserState.`pushNode(Node n)`
  `protected Object`
  SimpleNode.`unwrapChild(Node child)`
  Constructors in org.apache.cayenne.exp.parser with parameters of type Node
  Modifier
  Constructor
  Description
  ``
  `ASTNot(Node expression)`
  Constructor parameters in org.apache.cayenne.exp.parser with type arguments of type Node
  Modifier
  Constructor
  Description
  ``
  `ASTAnd(Collection<? extends Node> nodes)`
  ``
  `ASTOr(Collection<? extends Node> nodes)`