## Uses of Class
org.apache.lucene.search.DocIdSetIterator

- Packages that use DocIdSetIterator
  Package | Description
  --- | ---
  org.apache.lucene.codecs.lucene90 | Lucene 9.0 file format.
  org.apache.lucene.codecs.lucene95 | Lucene 9.5 file format.
  org.apache.lucene.codecs.lucene99 | Lucene 9.9 file format.
  org.apache.lucene.document | The logical representation of a `Document` for indexing and searching.
  org.apache.lucene.index | Code to maintain and access indices.
  org.apache.lucene.search | Code to search indices.
  org.apache.lucene.search.comparators | Comparators, used to compare hits so as to determine their sort order when collecting the top results with `TopFieldCollector`.
  org.apache.lucene.util | Some utility classes.
  org.apache.lucene.util.hnsw | Navigable Small-World graph, nominally Hierarchical but currently only has a single layer.
  org.apache.lucene.util.quantization | Provides quantization methods for scaling vector values to smaller data types and possibly fewer dimensions

- - ### Uses of DocIdSetIterator in org.apache.lucene.codecs.lucene90

    Subclasses of DocIdSetIterator in org.apache.lucene.codecs.lucene90
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `IndexedDISI` | Disk-based implementation of a `DocIdSetIterator` which can return the index of the current document, i.e.

    Methods in org.apache.lucene.codecs.lucene90 with parameters of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `static short` | IndexedDISI.`writeBitSet​(DocIdSetIterator it, IndexOutput out, byte denseRankPower)` | Writes the docIDs from it to out, in logical blocks, one for each 65536 docIDs in monotonically increasing gap-less order.

  - ### Uses of DocIdSetIterator in org.apache.lucene.codecs.lucene95

    Subclasses of DocIdSetIterator in org.apache.lucene.codecs.lucene95
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `OffHeapByteVectorValues` | Read the vector values from the index input.
    `static class` | `OffHeapByteVectorValues.DenseOffHeapVectorValues` | Dense vector values that are stored off-heap.
    `class` | `OffHeapFloatVectorValues` | Read the vector values from the index input.
    `static class` | `OffHeapFloatVectorValues.DenseOffHeapVectorValues` | Dense vector values that are stored off-heap.

  - ### Uses of DocIdSetIterator in org.apache.lucene.codecs.lucene99

    Subclasses of DocIdSetIterator in org.apache.lucene.codecs.lucene99
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `OffHeapQuantizedByteVectorValues` | Read the quantized vector values and their score correction values from the index input.
    `static class` | `OffHeapQuantizedByteVectorValues.DenseOffHeapVectorValues` | Dense vector values that are stored off-heap.

  - ### Uses of DocIdSetIterator in org.apache.lucene.document

    Subclasses of DocIdSetIterator in org.apache.lucene.document
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BinaryRangeDocValues` | A binary representation of a range that wraps a BinaryDocValues field

  - ### Uses of DocIdSetIterator in org.apache.lucene.index

    Subclasses of DocIdSetIterator in org.apache.lucene.index
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BinaryDocValues` | A per-document numeric value.
    `class` | `ByteVectorValues` | This class provides access to per-document floating point vector values indexed as `KnnByteVectorField`.
    `class` | `FilterBinaryDocValues` | Delegates all methods to a wrapped `BinaryDocValues`.
    `static class` | `FilterLeafReader.FilterPostingsEnum` | Base class for filtering `PostingsEnum` implementations.
    `class` | `FilterNumericDocValues` | Delegates all methods to a wrapped `NumericDocValues`.
    `class` | `FilterSortedDocValues` | Delegates all methods to a wrapped `SortedDocValues`.
    `class` | `FilterSortedNumericDocValues` | Delegates all methods to a wrapped `SortedNumericDocValues`.
    `class` | `FilterSortedSetDocValues` | Delegates all methods to a wrapped `SortedSetDocValues`.
    `class` | `FilterVectorValues` | Delegates all methods to a wrapped `FloatVectorValues`.
    `class` | `FloatVectorValues` | This class provides access to per-document floating point vector values indexed as `KnnFloatVectorField`.
    `class` | `ImpactsEnum` | Extension of `PostingsEnum` which also provides information about upcoming impacts.
    `static class` | `MultiDocValues.MultiSortedDocValues` | Implements SortedDocValues over n subs, using an OrdinalMap
    `static class` | `MultiDocValues.MultiSortedSetDocValues` | Implements MultiSortedSetDocValues over n subs, using an OrdinalMap
    `class` | `MultiPostingsEnum` | Exposes `PostingsEnum`, merged from `PostingsEnum` API of sub-segments.
    `class` | `NumericDocValues` | A per-document numeric value.
    `class` | `PostingsEnum` | Iterates through the postings.
    `class` | `SlowImpactsEnum` | `ImpactsEnum` that doesn't index impacts but implements the API in a legal way.
    `class` | `SortedDocValues` | A per-document byte[] with presorted values.
    `class` | `SortedNumericDocValues` | A list of per-document numeric values, sorted according to `Long.compare(long, long)`.
    `class` | `SortedSetDocValues` | A multi-valued version of `SortedDocValues`.
    `class` | `VectorValues` | Deprecated. use `FloatVectorValues` instead

    Methods in org.apache.lucene.index that return DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `DocIdSetIterator` | DocsWithFieldSet.`iterator()` |

    Methods in org.apache.lucene.index with parameters of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | PointValues.IntersectVisitor.`visit​(DocIdSetIterator iterator)` | Similar to `PointValues.IntersectVisitor.visit(int)`, but a bulk visit and implements may have their optimizations.
    `default void` | PointValues.IntersectVisitor.`visit​(DocIdSetIterator iterator, byte[] packedValue)` | Similar to `PointValues.IntersectVisitor.visit(int, byte[])` but in this case the packedValue can have more than one docID associated to it.

  - ### Uses of DocIdSetIterator in org.apache.lucene.search

    Subclasses of DocIdSetIterator in org.apache.lucene.search
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DisjunctionDISIApproximation` | A `DocIdSetIterator` which is a disjunction of the approximations of the provided iterators.
    `class` | `FilteredDocIdSetIterator` | Abstract decorator class of a DocIdSetIterator implementation that provides on-demand filter/validation mechanism on an underlying DocIdSetIterator.
    `class` | `ImpactsDISI` | `DocIdSetIterator` that skips non-competitive docs thanks to the indexed impacts.
    `static class` | `MultiPhraseQuery.UnionFullPostingsEnum` | Slower version of UnionPostingsEnum that delegates offsets and positions, for use by MatchesIterator
    `static class` | `MultiPhraseQuery.UnionPostingsEnum` | Takes the logical union of multiple PostingsEnum iterators.

    Fields in org.apache.lucene.search declared as DocIdSetIterator
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected DocIdSetIterator` | FilteredDocIdSetIterator.`_innerIter` |
    `DocIdSetIterator` | DisiWrapper.`approximation` |
    `protected DocIdSetIterator` | TwoPhaseIterator.`approximation` |
    `DocIdSetIterator` | DisiWrapper.`iterator` |

    Methods in org.apache.lucene.search that return DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `static DocIdSetIterator` | DocIdSetIterator.`all​(int maxDoc)` | A `DocIdSetIterator` that matches all documents up to `maxDoc - 1`.
    `DocIdSetIterator` | TwoPhaseIterator.`approximation()` | Return an approximation.
    `static DocIdSetIterator` | TwoPhaseIterator.`asDocIdSetIterator​(TwoPhaseIterator twoPhaseIterator)` | Return a `DocIdSetIterator` view of the provided `TwoPhaseIterator`.
    `default DocIdSetIterator` | LeafCollector.`competitiveIterator()` | Optionally returns an iterator over competitive documents.
    `default DocIdSetIterator` | LeafFieldComparator.`competitiveIterator()` | Returns a competitive iterator
    `static DocIdSetIterator` | ConjunctionUtils.`createConjunction​(List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators)` | Create a conjunction over the provided set of DocIdSetIterators and TwoPhaseIterators, using two-phase iterator where possible.
    `static DocIdSetIterator` | DocIdSetIterator.`empty()` | An empty `DocIdSetIterator` instance
    `DocIdSetIterator` | FilteredDocIdSetIterator.`getDelegate()` | Return the wrapped `DocIdSetIterator`.
    `static DocIdSetIterator` | FieldExistsQuery.`getDocValuesDocIdSetIterator​(String field, LeafReader reader)` | Returns a `DocIdSetIterator` from the given field or null if the field doesn't exist in the reader or if the reader has no doc values for the field.
    `static DocIdSetIterator` | ConjunctionUtils.`intersectIterators​(List<? extends DocIdSetIterator> iterators)` | Create a conjunction over the provided DocIdSetIterators.
    `static DocIdSetIterator` | ConjunctionUtils.`intersectScorers​(Collection<Scorer> scorers)` | Create a conjunction over the provided `Scorer`s.
    `DocIdSetIterator` | ConstantScoreScorer.`iterator()` |
    `abstract DocIdSetIterator` | DocIdSet.`iterator()` | Provides a `DocIdSetIterator` to access the set.
    `DocIdSetIterator` | FilterScorer.`iterator()` |
    `DocIdSetIterator` | IndriDisjunctionScorer.`iterator()` |
    `abstract DocIdSetIterator` | IndriScorer.`iterator()` |
    `DocIdSetIterator` | LRUQueryCache.CacheAndCount.`iterator()` |
    `abstract DocIdSetIterator` | Scorer.`iterator()` | Return a `DocIdSetIterator` over matching documents.
    `DocIdSetIterator` | TermScorer.`iterator()` |
    `static DocIdSetIterator` | DocIdSetIterator.`range​(int minDoc, int maxDoc)` | A `DocIdSetIterator` that matches a range documents from minDocID (inclusive) to maxDocID (exclusive).

    Methods in org.apache.lucene.search with parameters of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | ConjunctionUtils.`addIterator​(DocIdSetIterator disi, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators)` | Given a DocIdSetIterator, find any sub-iterators or two-phase iterators and add them to the provided DocIdSetIterator and TwoPhaseIterator lists
    `static TwoPhaseIterator` | TwoPhaseIterator.`unwrap​(DocIdSetIterator iterator)` | If the given `DocIdSetIterator` has been created with `TwoPhaseIterator.asDocIdSetIterator(org.apache.lucene.search.TwoPhaseIterator)`, then this will return the wrapped `TwoPhaseIterator`.

    Method parameters in org.apache.lucene.search with type arguments of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | ConjunctionUtils.`addIterator​(DocIdSetIterator disi, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators)` | Given a DocIdSetIterator, find any sub-iterators or two-phase iterators and add them to the provided DocIdSetIterator and TwoPhaseIterator lists
    `static void` | ConjunctionUtils.`addTwoPhaseIterator​(TwoPhaseIterator twoPhaseIter, List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators)` | Given a two-phase iterator, find any sub-iterators and add them to the provided DocIdSetIterator and TwoPhaseIterator lists
    `static DocIdSetIterator` | ConjunctionUtils.`createConjunction​(List<DocIdSetIterator> allIterators, List<TwoPhaseIterator> twoPhaseIterators)` | Create a conjunction over the provided set of DocIdSetIterators and TwoPhaseIterators, using two-phase iterator where possible.
    `static DocIdSetIterator` | ConjunctionUtils.`intersectIterators​(List<? extends DocIdSetIterator> iterators)` | Create a conjunction over the provided DocIdSetIterators.

    Constructors in org.apache.lucene.search with parameters of type DocIdSetIterator
    Constructor | Description
    --- | ---
    `ConstantScoreScorer​(Weight weight, float score, ScoreMode scoreMode, DocIdSetIterator disi)` | Constructor based on a `DocIdSetIterator` which will be used to drive iteration.
    `FilteredDocIdSetIterator​(DocIdSetIterator innerIter)` | Constructor.
    `ImpactsDISI​(DocIdSetIterator in, MaxScoreCache maxScoreCache)` | Sole constructor.
    `TwoPhaseIterator​(DocIdSetIterator approximation)` | Takes the approximation to be returned by `TwoPhaseIterator.approximation`.

  - ### Uses of DocIdSetIterator in org.apache.lucene.search.comparators

    Subclasses of DocIdSetIterator in org.apache.lucene.search.comparators
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MinDocIterator` | Docs iterator that starts iterating from a configurable minimum document

    Methods in org.apache.lucene.search.comparators that return DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `DocIdSetIterator` | NumericComparator.NumericLeafComparator.`competitiveIterator()` |

  - ### Uses of DocIdSetIterator in org.apache.lucene.util

    Subclasses of DocIdSetIterator in org.apache.lucene.util
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BitSetIterator` | A `DocIdSetIterator` which iterates over set bits in a bit set.
    `class` | `DocBaseBitSetIterator` | A `DocIdSetIterator` like `BitSetIterator` but has a doc base in onder to avoid storing previous 0s.

    Methods in org.apache.lucene.util that return DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `DocIdSetIterator` | BitDocIdSet.`iterator()` |
    `DocIdSetIterator` | NotDocIdSet.`iterator()` |
    `DocIdSetIterator` | RoaringDocIdSet.`iterator()` |

    Methods in org.apache.lucene.util with parameters of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DocIdSetBuilder.`add​(DocIdSetIterator iter)` | Add the content of the provided `DocIdSetIterator` to this builder.
    `void` | DocIdSetBuilder.BulkAdder.`add​(DocIdSetIterator iterator)` |
    `RoaringDocIdSet.Builder` | RoaringDocIdSet.Builder.`add​(DocIdSetIterator disi)` | Add the content of the provided `DocIdSetIterator`.
    `void` | FixedBitSet.`andNot​(DocIdSetIterator iter)` |
    `protected void` | BitSet.`checkUnpositioned​(DocIdSetIterator iter)` | Assert that the current doc is -1.
    `static FixedBitSet` | BitSetIterator.`getFixedBitSetOrNull​(DocIdSetIterator iterator)` | If the provided iterator wraps a `FixedBitSet`, returns it, otherwise returns null.
    `static SparseFixedBitSet` | BitSetIterator.`getSparseFixedBitSetOrNull​(DocIdSetIterator iterator)` | If the provided iterator wraps a `SparseFixedBitSet`, returns it, otherwise returns null.
    `static BitSet` | BitSet.`of​(DocIdSetIterator it, int maxDoc)` | Build a `BitSet` from the content of the provided `DocIdSetIterator`.
    `void` | BitSet.`or​(DocIdSetIterator iter)` | Does in-place OR of the bits provided by the iterator.
    `void` | FixedBitSet.`or​(DocIdSetIterator iter)` |
    `void` | SparseFixedBitSet.`or​(DocIdSetIterator it)` |
    `void` | FixedBitSet.`xor​(DocIdSetIterator iter)` | Does in-place XOR of the bits provided by the iterator.

  - ### Uses of DocIdSetIterator in org.apache.lucene.util.hnsw

    Methods in org.apache.lucene.util.hnsw with parameters of type DocIdSetIterator
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected HnswBuilder` | ConcurrentHnswMerger.`createBuilder​(DocIdSetIterator mergedVectorIterator, int maxOrd)` |
    `protected HnswBuilder` | IncrementalHnswGraphMerger.`createBuilder​(DocIdSetIterator mergedVectorIterator, int maxOrd)` | Builds a new HnswGraphBuilder using the biggest graph from the merge state as a starting point.
    `protected int[]` | IncrementalHnswGraphMerger.`getNewOrdMapping​(DocIdSetIterator mergedVectorIterator, BitSet initializedNodes)` | Creates a new mapping from old ordinals to new ordinals and returns the total number of vectors in the newly merged segment.
    `OnHeapHnswGraph` | HnswGraphMerger.`merge​(DocIdSetIterator mergedVectorIterator, InfoStream infoStream, int maxOrd)` | Merge and produce the on heap graph
    `OnHeapHnswGraph` | IncrementalHnswGraphMerger.`merge​(DocIdSetIterator mergedVectorIterator, InfoStream infoStream, int maxOrd)` |

  - ### Uses of DocIdSetIterator in org.apache.lucene.util.quantization

    Subclasses of DocIdSetIterator in org.apache.lucene.util.quantization
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `QuantizedByteVectorValues` | A version of `ByteVectorValues`, but additionally retrieving score correction offset for Scalar quantization scores.