org.millscript.commons.util.map
Class AbstractITreeMap.ITreeMapNodeIterator<K,V>

java.lang.Object
  extended by org.millscript.commons.util.iterator.AbstractMapIterator<K,V>
      extended by org.millscript.commons.util.map.AbstractITreeMap.ITreeMapNodeIterator<K,V>
Type Parameters:
K -
V -
All Implemented Interfaces:
MapIterator<K,V>
Enclosing class:
AbstractITreeMap<K,V,N extends ITreeMapNode<K,V>>

public static class AbstractITreeMap.ITreeMapNodeIterator<K,V>
extends AbstractMapIterator<K,V>


Constructor Summary
AbstractITreeMap.ITreeMapNodeIterator(ITreeMapNode<K,V> rootNode, boolean share)
          Constructs a new binary tree map iterator to iterate over the specified node tree.
 
Method Summary
protected  void advance()
          Advances this iterator to its next point.
protected  K getKey()
          Returns the key for the current mapping in the iteration.
protected  Maplet<K,V> getMaplet()
          Returns the current mapping in the iteration.
protected  V getValue()
          Returns the value for the current mapping in the iteration.
 boolean hasNext()
          Returns true if there are more values available in this iteration and false otherwise.
protected  boolean outOfBounds()
          Returns true if this iterator is outside its bounds(before the first element or beyond the last) and false otherwise.
 
Methods inherited from class org.millscript.commons.util.iterator.AbstractMapIterator
currentKey, currentMaplet, currentValue, nextKey, nextMaplet, nextValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractITreeMap.ITreeMapNodeIterator

public AbstractITreeMap.ITreeMapNodeIterator(ITreeMapNode<K,V> rootNode,
                                             boolean share)
Constructs a new binary tree map iterator to iterate over the specified node tree.

Parameters:
rootNode - the root node in the tree to iterate over
share - if true the specified node tree will be shared otherwise the array will be copied.
Method Detail

advance

protected void advance()
Description copied from class: AbstractMapIterator
Advances this iterator to its next point. This method allows a common implementation of the next* methods, making it a little bit easier to implement the map iterator interface.

Specified by:
advance in class AbstractMapIterator<K,V>
See Also:
AbstractMapIterator.advance()

getKey

protected K getKey()
Description copied from class: AbstractMapIterator
Returns the key for the current mapping in the iteration. This method must be implemented by any concrete implementation and should not need to perform bounds checking.

Specified by:
getKey in class AbstractMapIterator<K,V>
Returns:
the key for the current mapping
See Also:
AbstractMapIterator.getKey()

getMaplet

protected Maplet<K,V> getMaplet()
Description copied from class: AbstractMapIterator
Returns the current mapping in the iteration. This method must be implemented by any concrete implementation and should not need to perform bounds checking.

Overrides:
getMaplet in class AbstractMapIterator<K,V>
Returns:
the Maplet for the current mapping
See Also:
AbstractMapIterator.getMaplet()

getValue

protected V getValue()
Description copied from class: AbstractMapIterator
Returns the value for the current mapping in the iteration. This method must be implemented by any concrete implementation and should not need to perform bounds checking.

Specified by:
getValue in class AbstractMapIterator<K,V>
Returns:
the value for the current mapping
See Also:
AbstractMapIterator.getValue()

hasNext

public boolean hasNext()
Description copied from interface: MapIterator
Returns true if there are more values available in this iteration and false otherwise.

Returns:
true if there are more values in this iteration and false otherwise
See Also:
MapIterator.hasNext()

outOfBounds

protected boolean outOfBounds()
Description copied from class: AbstractMapIterator
Returns true if this iterator is outside its bounds(before the first element or beyond the last) and false otherwise.

Specified by:
outOfBounds in class AbstractMapIterator<K,V>
Returns:
true if this iterator is outside its bounds and false otherwise
See Also:
AbstractMapIterator.outOfBounds()


Copyright © 2005-2007 Open World Ltd. All Rights Reserved.