org.eigenbase.util
Class MultiMap.EntryIter

java.lang.Object
  extended by org.eigenbase.util.MultiMap.EntryIter
All Implemented Interfaces:
Iterator<Map.Entry<K,V>>
Enclosing class:
MultiMap<K,V>

private class MultiMap.EntryIter
extends Object
implements Iterator<Map.Entry<K,V>>

Implementation for entryIterMulti(). Note that this assumes that empty ValueLists will never be encountered, and also preserves this property when remove() is called.


Field Summary
(package private)  K key
           
(package private)  Iterator<K> keyIter
           
(package private)  Iterator<V> valueIter
           
(package private)  List<V> valueList
           
 
Constructor Summary
MultiMap.EntryIter()
           
 
Method Summary
 boolean hasNext()
           
 Map.Entry<K,V> next()
           
private  void nextKey()
           
 void remove()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

key

K key

keyIter

Iterator<K> keyIter

valueList

List<V> valueList

valueIter

Iterator<V> valueIter
Constructor Detail

MultiMap.EntryIter

MultiMap.EntryIter()
Method Detail

nextKey

private void nextKey()

hasNext

public boolean hasNext()
Specified by:
hasNext in interface Iterator<Map.Entry<K,V>>

next

public Map.Entry<K,V> next()
Specified by:
next in interface Iterator<Map.Entry<K,V>>

remove

public void remove()
Specified by:
remove in interface Iterator<Map.Entry<K,V>>