Class FSIntIteratorImplBase<T extends FeatureStructure>

java.lang.Object
org.apache.uima.cas.impl.FSIntIteratorImplBase<T>
All Implemented Interfaces:
Comparable<FSIntIteratorImplBase<T>>, LowLevelIterator, ComparableIntPointerIterator<T>, IntPointerIterator
Direct Known Subclasses:
IntIterator4set

public abstract class FSIntIteratorImplBase<T extends FeatureStructure> extends Object implements ComparableIntPointerIterator<T>, LowLevelIterator
Base class for int Iterators over indexes. There are 3 styles of indexes, one for Sorted, one for Sets and one for Bag. There is a separate int iterator for each of these styles: IntIterator4bag IntIterator4sorted IntArrayRBTIterator There are also specialized int iterators: SnapshotPointerIterator - iterates over a one-time flat snapshot FlatIterator - iterates over a flattened array of Java Objects (not ints) - so this is excluded from this discussion because this class is only for int iterators. This class is the superclass of the 3 standard int iterators, and the SnapshotPointerIterator. It is an iterator for just one UIMA type (excludes subtypes). Other wrappers handle combining multiple of these kinds of iterators into one covering all the subtypes.
  • Field Details

    • detectIllegalIndexUpdates

      protected final int[] detectIllegalIndexUpdates
      This is a ref to the shared value in the FSIndexRepositoryImpl OR it may be null which means skip the checking (done for some internal routines which know they are not updating the index, and assume no other thread is)
  • Constructor Details

    • FSIntIteratorImplBase

      public FSIntIteratorImplBase(FSLeafIndexImpl<T> fsLeafIndexImpl, int[] detectIllegalIndexUpdates)
      Parameters:
      fsLeafIndexImpl - the leaf index this iterator is over
      detectIllegalIndexUpdates - may be null
  • Method Details