Package org.antlr.runtime.tree
Class TreeIterator
- java.lang.Object
-
- org.antlr.runtime.tree.TreeIterator
-
- All Implemented Interfaces:
java.util.Iterator<java.lang.Object>
public class TreeIterator extends java.lang.Object implements java.util.Iterator<java.lang.Object>
Return a node stream from a doubly-linked tree whose nodes know what child index they are. No remove() is supported. Emit navigation nodes (DOWN, UP, and EOF) to let show tree structure.
-
-
Field Summary
Fields Modifier and Type Field Description protected TreeAdaptor
adaptor
java.lang.Object
down
java.lang.Object
eof
protected boolean
firstTime
protected FastQueue<java.lang.Object>
nodes
If we emit UP/DOWN nodes, we need to spit out multiple nodes per next() call.protected java.lang.Object
root
protected java.lang.Object
tree
java.lang.Object
up
-
Constructor Summary
Constructors Constructor Description TreeIterator(java.lang.Object tree)
TreeIterator(TreeAdaptor adaptor, java.lang.Object tree)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
hasNext()
java.lang.Object
next()
void
remove()
void
reset()
-
-
-
Field Detail
-
adaptor
protected TreeAdaptor adaptor
-
root
protected java.lang.Object root
-
tree
protected java.lang.Object tree
-
firstTime
protected boolean firstTime
-
up
public java.lang.Object up
-
down
public java.lang.Object down
-
eof
public java.lang.Object eof
-
nodes
protected FastQueue<java.lang.Object> nodes
If we emit UP/DOWN nodes, we need to spit out multiple nodes per next() call.
-
-
Constructor Detail
-
TreeIterator
public TreeIterator(java.lang.Object tree)
-
TreeIterator
public TreeIterator(TreeAdaptor adaptor, java.lang.Object tree)
-
-
Method Detail
-
reset
public void reset()
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejava.util.Iterator<java.lang.Object>
-
next
public java.lang.Object next()
- Specified by:
next
in interfacejava.util.Iterator<java.lang.Object>
-
remove
public void remove()
- Specified by:
remove
in interfacejava.util.Iterator<java.lang.Object>
-
-