diff options
Diffstat (limited to 'src/kanga/syntaxtree/NodeListOptional.java')
-rw-r--r-- | src/kanga/syntaxtree/NodeListOptional.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/kanga/syntaxtree/NodeListOptional.java b/src/kanga/syntaxtree/NodeListOptional.java new file mode 100644 index 0000000..7d0581d --- /dev/null +++ b/src/kanga/syntaxtree/NodeListOptional.java @@ -0,0 +1,46 @@ +// +// Generated by JTB 1.3.2 +//
+
+package kanga.syntaxtree; + +import java.util.Enumeration; +import java.util.Vector; + +/** + * 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(kanga.visitor.Visitor v) { + v.visit(this); + } + public <R,A> R accept(kanga.visitor.GJVisitor<R,A> v, A argu) { + return v.visit(this,argu); + } + public <R> R accept(kanga.visitor.GJNoArguVisitor<R> v) { + return v.visit(this); + } + public <A> void accept(kanga.visitor.GJVoidVisitor<A> v, A argu) { + v.visit(this,argu); + } + + public Vector<Node> nodes; +} +
|