Class DocIdSet

java.lang.Object
org.apache.lucene.search.DocIdSet
All Implemented Interfaces:
Accountable
Direct Known Subclasses:
BitDocIdSet, DocsWithFieldSet, NotDocIdSet, RoaringDocIdSet

public abstract class DocIdSet extends Object implements Accountable
A DocIdSet contains a set of doc ids. Implementing classes must only implement iterator() to provide access to the set.
  • Field Details

    • EMPTY

      public static final DocIdSet EMPTY
      An empty DocIdSet instance
  • Constructor Details

    • DocIdSet

      public DocIdSet()
  • Method Details

    • iterator

      public abstract DocIdSetIterator iterator() throws IOException
      Provides a DocIdSetIterator to access the set. This implementation can return null if there are no docs that match.
      Throws:
      IOException
    • bits

      public Bits bits() throws IOException
      Optionally provides a Bits interface for random access to matching documents.
      Returns:
      null, if this DocIdSet does not support random access. In contrast to iterator(), a return value of null does not imply that no documents match the filter! The default implementation does not provide random access, so you only need to implement this method if your DocIdSet can guarantee random access to every docid in O(1) time without external disk access (as Bits interface cannot throw IOException). This is generally true for bit sets like FixedBitSet, which return itself if they are used as DocIdSet.
      Throws:
      IOException