diff options
Diffstat (limited to 'syntaxtree/NodeListOptional.java')
-rw-r--r-- | syntaxtree/NodeListOptional.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/syntaxtree/NodeListOptional.java b/syntaxtree/NodeListOptional.java new file mode 100644 index 0000000..135124b --- /dev/null +++ b/syntaxtree/NodeListOptional.java @@ -0,0 +1,45 @@ +// +// Generated by JTB 1.3.2 +// + +package syntaxtree; + +import java.util.*; + +/** + * Represents an optional grammar list, e.g. ( A )* + */ +public class NodeListOptional implements NodeListInterface { + public NodeListOptional() { + nodes = new Vector<Node>(); + } + + public NodeListOptional(Node firstNode) { + nodes = new Vector<Node>(); + addNode(firstNode); + } + + public void addNode(Node n) { + nodes.addElement(n); + } + + public Enumeration<Node> elements() { return nodes.elements(); } + public Node elementAt(int i) { return nodes.elementAt(i); } + public int size() { return nodes.size(); } + public boolean present() { return nodes.size() != 0; } + public void accept(visitor.Visitor v) { + v.visit(this); + } + public <R,A> R accept(visitor.GJVisitor<R,A> v, A argu) { + return v.visit(this,argu); + } + public <R> R accept(visitor.GJNoArguVisitor<R> v) { + return v.visit(this); + } + public <A> void accept(visitor.GJVoidVisitor<A> v, A argu) { + v.visit(this,argu); + } + + public Vector<Node> nodes; +} + |