gnu.lists
Class TreePosition
- Cloneable, java.util.Enumeration, java.util.ListIterator
public class TreePosition
implements Cloneable
A position that can also go down and up in a tree.
A TreePosition is a stack of positions. The "current" position
(i.e. the one you get if you tree the TreePosition as a SeqPosition)
is that in the innermost containing sequence.
Normally, the "current" element is (the one following) a position in a
sequence. As a special (initial case), we may want to treat the
entire sequence is the "current element". This is represented by depth==-1
and xpos set to the root element (which need not actually be a sequence).
add , copy , finalize , fromEndIndex , getContainingSequenceSize , getNext , getNextKind , getNextTypeName , getNextTypeObject , getPos , getPrevious , gotoChildrenStart , gotoEnd , gotoNext , gotoPrevious , gotoStart , hasMoreElements , hasNext , hasPrevious , isAfter , make , next , nextElement , nextIndex , previous , previousIndex , release , remove , set , set , set , setNext , setPos , setPos , setPrevious , toInfo , toString |
TreePosition
public TreePosition()
TreePosition
public TreePosition(Object root)
Not a position *in* a sequence, but the current element is the entire sequence.
clone
public Object clone()
dump
public void dump()
Copy this position into pos.
getAncestor
public Object getAncestor(int up)
Get the value of an ancestor node.
up
- the number parents to go up.
- if up is 0, same getNext. Otherwise get parent
applied as specified.
getDepth
public int getDepth()
Number of ancestor sequences, including current sequence.
getPosNext
public Object getPosNext()
gotoAttributesStart
public boolean gotoAttributesStart()
Set position before first attribute (of the element following position).
This is used to iterate through the sequence of attributes.
gotoChildrenStart
public boolean gotoChildrenStart()
Set position before first child (of the element following position).
- gotoChildrenStart in interface SeqPosition
- true if there is a child sequence (which might be empty);
false if current position is end of sequence or following element
is atomic (cannot have children).
gotoParent
public final boolean gotoParent()
popNoRelease
public void popNoRelease()