Class FsIterator_subtypes_snapshot<T extends FeatureStructure>

    • Field Detail

      • pos

        private int pos
      • is_unordered

        private final boolean is_unordered
        support for alternative source iterating, where there is no order
      • isNotUimaIndexSource

        private final boolean isNotUimaIndexSource
      • comparatorMaybeNoTypeWithoutId

        private final java.util.Comparator<TOP> comparatorMaybeNoTypeWithoutId
    • Constructor Detail

      • FsIterator_subtypes_snapshot

        public FsIterator_subtypes_snapshot​(FsIndex_flat<T> flatIndex,
                                            java.util.Comparator<TOP> comparatorMaybeNoTypeWithoutId)
      • FsIterator_subtypes_snapshot

        public FsIterator_subtypes_snapshot​(T[] snapshot,
                                            LowLevelIndex<T> index,
                                            boolean is_unordered,
                                            java.util.Comparator<TOP> comparatorMaybeNoTypeWithoutId)
        Alternative source iterator, 1st arg is different (not an "index", just an array) - altSources are unordered, and NoType is ignored - also supports backwards iterators, these are ordered (Maybe fix this in the future - this is not necessarily required)
        Parameters:
        snapshot - -
        index - -
        is_unordered - - mark as unordered
        comparatorMaybeNoTypeWithoutId - -
    • Method Detail

      • isValid

        public boolean isValid()
        Description copied from interface: FSIterator
        Check if this iterator is valid.
        Specified by:
        isValid in interface FSIterator<T extends FeatureStructure>
        Returns:
        true if the iterator is valid.
      • get

        public T get()
              throws java.util.NoSuchElementException
        Description copied from interface: FSIterator
        Get the structure the iterator is pointing at.
        Specified by:
        get in interface FSIterator<T extends FeatureStructure>
        Returns:
        The structure the iterator is pointing at.
        Throws:
        java.util.NoSuchElementException - If the iterator is not valid.
      • getNvc

        public T getNvc()
        Description copied from interface: FSIterator
        Get the structure the iterator is pointing at. Throws various unchecked exceptions, if the iterator is not valid
        Specified by:
        getNvc in interface FSIterator<T extends FeatureStructure>
        Returns:
        The structure the iterator is pointing at.
      • moveToNextNvc

        public void moveToNextNvc()
        Description copied from interface: FSIterator
        version of moveToNext which bypasses the isValid check - call only if you've just done this check yourself
        Specified by:
        moveToNextNvc in interface FSIterator<T extends FeatureStructure>
      • moveToPreviousNvc

        public void moveToPreviousNvc()
        Description copied from interface: FSIterator
        version of moveToPrevious which bypasses the isValid check - call only if you've just done this check yourself
        Specified by:
        moveToPreviousNvc in interface FSIterator<T extends FeatureStructure>
      • moveToNoReinit

        public void moveToNoReinit​(FeatureStructure fs)
        Description copied from interface: LowLevelIterator
        Internal use same as moveTo(fs), but won't reset to use current contents of index if index has changed
        Specified by:
        moveToNoReinit in interface LowLevelIterator<T extends FeatureStructure>
        Parameters:
        fs - the fs to use as the template identifying the place to move to
      • ll_indexSizeMaybeNotCurrent

        public int ll_indexSizeMaybeNotCurrent()
        Specified by:
        ll_indexSizeMaybeNotCurrent in interface LowLevelIterator<T extends FeatureStructure>
        Returns:
        The size of the index. In case of copy-on-write, this returns the size of the index at the time the iterator was created, or at the last moveTo, moveToFirst, or moveToLast. To get the current index size, use ll_getIndex().getSize()
      • isIndexesHaveBeenUpdated

        public boolean isIndexesHaveBeenUpdated()
        Specified by:
        isIndexesHaveBeenUpdated in interface LowLevelIterator<T extends FeatureStructure>
        Returns:
        true if one or more of the underlying indexes this iterator goes over, has been updated since initialization or resetting operation (moveToFirst/Last/feature_structure). This includes empty iterators becoming non-empty.
      • getComparator

        public java.util.Comparator<TOP> getComparator()
        Specified by:
        getComparator in interface LowLevelIterator<T extends FeatureStructure>
        Returns:
        the comparator used by this iterator. It is always a withoutID style, and may be either a withType or NoType style.
      • size

        public int size()
        Description copied from interface: FSIterator
        return the size of the collection being iterated over, if available. Because the iterator can move forwards and backwards, the size is the total size that the iterator would iterate over, starting at the first element thru the last element. This may be inefficient to compute.
        Specified by:
        size in interface FSIterator<T extends FeatureStructure>
        Returns:
        the size of the collection being iterated over.