Class FSIndexRepositoryImpl.PointerIterator

java.lang.Object
org.apache.uima.cas.impl.FSIndexRepositoryImpl.PointerIterator
All Implemented Interfaces:
LowLevelIterator, IntPointerIterator
Direct Known Subclasses:
FSIndexRepositoryImpl.PointerIteratorUnordered
Enclosing class:
FSIndexRepositoryImpl

private class FSIndexRepositoryImpl.PointerIterator extends Object implements IntPointerIterator, LowLevelIterator
The next 3 classes (PointerIterator, PointerIteratorUnordered and LeafPointerIterator) implement iterators for particular indexes. PointerIteratorUnordered is used for bag and things like all indexed fs where order is not important. It uses the same impl as PointerIterator, except it works by sequentially iterating over each of the iterator pieces. This class handles the concepts involved with iterating over a type and all of its subtypes, keeping the ordering among the subtypes. The LeafPointerIterator handles just iterating over a particular type or subtype (the one that this class picks). The iterator implementation for indexes. Tricky because the iterator needs to be able to move backwards as well as forwards.