edu.wisc.ssec.mcidasv.util.trie
Class PatriciaTrie.PrefixEntryIterator

java.lang.Object
  extended by edu.wisc.ssec.mcidasv.util.trie.PatriciaTrie.NodeIterator<Map.Entry<K,V>>
      extended by edu.wisc.ssec.mcidasv.util.trie.PatriciaTrie.PrefixEntryIterator
All Implemented Interfaces:
Iterator<Map.Entry<K,V>>
Enclosing class:
PatriciaTrie<K,V>

private class PatriciaTrie.PrefixEntryIterator
extends PatriciaTrie.NodeIterator<Map.Entry<K,V>>

An iterator for iterating over a prefix search.


Field Summary
protected  boolean lastOne
           
protected  int length
           
protected  int offset
           
protected  K prefix
           
protected  PatriciaTrie.TrieEntry<K,V> subtree
           
 
Fields inherited from class edu.wisc.ssec.mcidasv.util.trie.PatriciaTrie.NodeIterator
current, expectedModCount, next
 
Constructor Summary
PatriciaTrie.PrefixEntryIterator(PatriciaTrie.TrieEntry<K,V> startScan, K prefix, int offset, int length)
           
 
Method Summary
protected  PatriciaTrie.TrieEntry<K,V> findNext(PatriciaTrie.TrieEntry<K,V> prior)
           
 Map.Entry<K,V> next()
           
 void remove()
           
 
Methods inherited from class edu.wisc.ssec.mcidasv.util.trie.PatriciaTrie.NodeIterator
hasNext, nextEntry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

prefix

protected final K prefix

offset

protected final int offset

length

protected final int length

lastOne

protected boolean lastOne

subtree

protected PatriciaTrie.TrieEntry<K,V> subtree
Constructor Detail

PatriciaTrie.PrefixEntryIterator

PatriciaTrie.PrefixEntryIterator(PatriciaTrie.TrieEntry<K,V> startScan,
                                 K prefix,
                                 int offset,
                                 int length)
Method Detail

next

public Map.Entry<K,V> next()

findNext

protected PatriciaTrie.TrieEntry<K,V> findNext(PatriciaTrie.TrieEntry<K,V> prior)
Overrides:
findNext in class PatriciaTrie.NodeIterator<Map.Entry<K,V>>

remove

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