Package EDU.purdue.jtb.parser.syntaxtree
Class NodeSequence
- java.lang.Object
-
- EDU.purdue.jtb.parser.syntaxtree.NodeSequence
-
public class NodeSequence extends java.lang.Object implements INodeList
Represents a sequence of nodes (x y z ...) nested within a choice (|), list (+), optional list (*), or optional node (? or []), e.g. ' ( A B )+ ' or ' [ C D E ] '.
The class stores the nodes list in an ArrayList.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description NodeSequence()
Initializes an emptyNodeSequence
with a default allocation.NodeSequence(int sz)
Initializes an emptyNodeSequence
with a given allocation.NodeSequence(int sz, INode firstNode)
Initializes an emptyNodeSequence
with a given allocation and adds a first node.NodeSequence(INode firstNode)
Initializes an emptyNodeSequence
with a default allocation and adds a first node.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
accept(IIntVisitor vis)
Accepts aIIntVisitor
visitor with user return data.void
accept(IVoidVisitor vis)
Accepts aIVoidVisitor
visitor} visitor with user return data.void
addNode(INode n)
Adds a node to theNodeSequence
.INode
elementAt(int i)
Gets the node in the list at a given position.java.util.Iterator<INode>
elements()
Returns an iterator on the nodes list.int
size()
Returns the number of nodes in the list.
-
-
-
Field Detail
-
nodes
public java.util.ArrayList<INode> nodes
The list of nodes
-
-
Constructor Detail
-
NodeSequence
public NodeSequence()
Initializes an emptyNodeSequence
with a default allocation.
-
NodeSequence
public NodeSequence(int sz)
Initializes an emptyNodeSequence
with a given allocation.- Parameters:
sz
- - the list size
-
NodeSequence
public NodeSequence(INode firstNode)
Initializes an emptyNodeSequence
with a default allocation and adds a first node.- Parameters:
firstNode
- - the node to add
-
NodeSequence
public NodeSequence(int sz, INode firstNode)
Initializes an emptyNodeSequence
with a given allocation and adds a first node.- Parameters:
sz
- - the list sizefirstNode
- - the node to add
-
-
Method Detail
-
addNode
public void addNode(INode n)
Adds a node to theNodeSequence
.
-
elementAt
public INode elementAt(int i)
Gets the node in the list at a given position.
-
elements
public java.util.Iterator<INode> elements()
Returns an iterator on the nodes list.
-
size
public int size()
Returns the number of nodes in the list.
-
accept
public int accept(IIntVisitor vis)
Accepts aIIntVisitor
visitor with user return data.
-
accept
public void accept(IVoidVisitor vis)
Accepts aIVoidVisitor
visitor} visitor with user return data.
-
-