NotDocIdSet (Lucene 10.5.0 core API)
Description: declaration: package: org.apache.lucene.util, class: NotDocIdSet

Package org.apache.lucene.util

# Class NotDocIdSet

java.lang.Object
org.apache.lucene.search.DocIdSet
org.apache.lucene.util.NotDocIdSet

All Implemented Interfaces:
  `Accountable`

public final class NotDocIdSet extends DocIdSet
This `DocIdSet` encodes the negation of another `DocIdSet`. It is cacheable and supports random-access if the underlying set is cacheable and supports random-access.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.search.DocIdSet

  `EMPTY`

  ### Fields inherited from interface org.apache.lucene.util.Accountable

  `NULL_ACCOUNTABLE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NotDocIdSet(int maxDoc, DocIdSet in)`
  Sole constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Bits`
  `bits()`
  Deprecated.
  `DocIdSetIterator`
  `iterator()`
  Provides a `DocIdSetIterator` to access the set.
  `long`
  `ramBytesUsed()`
  Returns an estimate of the JVM heap memory used by this object in bytes.

  ### Methods inherited from class org.apache.lucene.search.DocIdSet

  `all`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.lucene.util.Accountable

  `getChildResources`

- ## Constructor Details

  - ### NotDocIdSet

    public NotDocIdSet(int maxDoc, DocIdSet in)
    Sole constructor.

- ## Method Details

  - ### bits

    @Deprecated public Bits bits() throws IOException
    Deprecated.
    Description copied from class: `DocIdSet`
    Optionally provides a `Bits` interface for random access to matching documents.
    Overrides:
      `bits` in class `DocIdSet`
    Returns:
      `null`, if this `DocIdSet` does not support random access. In contrast to `DocIdSet.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`

  - ### ramBytesUsed

    public long ramBytesUsed()
    Description copied from interface: `Accountable`
    Returns an estimate of the JVM heap memory used by this object in bytes. The method name uses "ram" for historical reasons; only JVM heap memory should be reported. Off-heap resources such as memory-mapped files or native direct buffers should not be included. Negative values are illegal.

  - ### iterator

    public DocIdSetIterator iterator() throws IOException
    Description copied from class: `DocIdSet`
    Provides a `DocIdSetIterator` to access the set. This implementation can return `null` if there are no docs that match.
    Specified by:
      `iterator` in class `DocIdSet`
    Throws:
      `IOException`