Node (cayenne-doc: Cayenne Documentation 5.0-M2 API)
Description: declaration: package: org.apache.cayenne.exp.parser, interface: Node

# Interface Node

All Known Implementing Classes:
  `AggregateConditionNode, ASTAbs, ASTAdd, ASTAggregateFunctionCall, ASTAll, ASTAnd, ASTAny, ASTAsterisk, ASTAvg, ASTBetween, ASTBitwiseAnd, ASTBitwiseLeftShift, ASTBitwiseNot, ASTBitwiseOr, ASTBitwiseRightShift, ASTBitwiseXor, ASTCaseWhen, ASTConcat, ASTCount, ASTCurrentDate, ASTCurrentTime, ASTCurrentTimestamp, ASTCustomAggregate, ASTCustomFunction, ASTCustomOperator, ASTDbIdPath, ASTDbPath, ASTDistinct, ASTDivide, ASTElse, ASTEnclosingObject, ASTEnum, ASTEqual, ASTExists, ASTExtract, ASTFalse, ASTFullObject, ASTFunctionCall, ASTGreater, ASTGreaterOrEqual, ASTIn, ASTLength, ASTLess, ASTLessOrEqual, ASTLike, ASTLikeIgnoreCase, ASTList, ASTLocate, ASTLower, ASTMax, ASTMin, ASTMod, ASTMultiply, ASTNamedParameter, ASTNegate, ASTNot, ASTNotBetween, ASTNotEqual, ASTNotExists, ASTNotIn, ASTNotLike, ASTNotLikeIgnoreCase, ASTObjPath, ASTOr, ASTPath, ASTScalar, ASTSqrt, ASTSubquery, ASTSubstring, ASTSubtract, ASTSum, ASTThen, ASTTrim, ASTTrue, ASTUpper, ASTWhen, ConditionNode, EvaluatedBitwiseNode, EvaluatedMathNode, EvaluatedNode, PatternMatchNode, SimpleNode`

public interface Node
Provides basic machinery for constructing the parent and child relationships between nodes. All AST nodes must implement this interface.

Generated by JJTree

Since:
  1.1

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `jjtAddChild(Node n, int i)`
  This method tells the node to add its argument to the node's list of children.
  `void`
  `jjtClose()`
  Called after all the child nodes have been added.
  `Node`
  `jjtGetChild(int i)`
  This method returns a child node.
  `int`
  `jjtGetNumChildren()`
  Return the number of children the node has.
  `Node`
  `jjtGetParent()`
  `void`
  `jjtOpen()`
  Called after the node has been made the current node.
  `void`
  `jjtSetParent(Node n)`
  This pair of methods are used to inform the node of its parent.

- ## Method Details

  - ### jjtOpen

    void jjtOpen()
    Called after the node has been made the current node. It indicates that child nodes can now be added to it.

  - ### jjtClose

    void jjtClose()
    Called after all the child nodes have been added.

  - ### jjtSetParent

    void jjtSetParent(Node n)
    This pair of methods are used to inform the node of its parent.

  - ### jjtGetParent

    Node jjtGetParent()

  - ### jjtAddChild

    void jjtAddChild(Node n, int i)
    This method tells the node to add its argument to the node's list of children.

  - ### jjtGetChild

    Node jjtGetChild(int i)
    This method returns a child node. The children are numbered from zero, left to right.

  - ### jjtGetNumChildren

    int jjtGetNumChildren()
    Return the number of children the node has.