1 /* Generated by: JJTree: Do not edit this line. Node.java Version 1.1 */
2 /* ParserGeneratorCCOptions:MULTI=true,NODE_USES_PARSER=false,VISITOR=true,TRACK_TOKENS=true,NODE_PREFIX=AST,NODE_EXTENDS=,NODE_FACTORY=,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
3 package org.apache.commons.jexl3.parser;
4
5 /* All AST nodes must implement this interface. It provides basic
6 machinery for constructing the parent and child relationships
7 between nodes. */
8
9 public
10 interface Node extends java.io.Serializable {
11 /** This method is called after the node has been made the current
12 node. It indicates that child nodes can now be added to it. */
13 void jjtOpen();
14
15 /** This method is called after all the child nodes have been
16 added. */
17 void jjtClose();
18
19 /**
20 * Set the parent node of this node
21 * @param n parent node to set
22 */
23 void jjtSetParent(Node n);
24
25 /**
26 * @return parent node
27 */
28 Node jjtGetParent();
29
30 /**
31 * This method tells the node to add its argument to the node's
32 * list of children.
33 * @param n node to add as a child
34 * @param i zero-based index where to add the child
35 */
36 void jjtAddChild(Node n, int i);
37
38 /**
39 * This method returns a child node. The children are numbered
40 * from zero, left to right.
41 * @param i zero-baeed child index
42 */
43 Node jjtGetChild(int i);
44
45 /**
46 * @return the number of children the node has. Always ≥ 0.
47 */
48 int jjtGetNumChildren();
49
50 int getId();
51
52 /** Accept the visitor. **/
53 Object jjtAccept(ParserVisitor visitor, Object data);
54 }
55 /* ParserGeneratorCC - OriginalChecksum=80b3018e6ea6855ddbfa6c84f985a29e (do not edit this line) */