public final class NotDocIdSet extends DocIdSet
DocIdSet
encodes the negation of another DocIdSet
.
It is cacheable and supports random-access if the underlying set is
cacheable and supports random-access.Constructor and Description |
---|
NotDocIdSet(int maxDoc,
DocIdSet in)
Sole constructor.
|
Modifier and Type | Method and Description |
---|---|
Bits |
bits()
Optionally provides a
Bits interface for random access
to matching documents. |
boolean |
isCacheable()
This method is a hint for
CachingWrapperFilter , if this DocIdSet
should be cached without copying it. |
DocIdSetIterator |
iterator()
Provides a
DocIdSetIterator to access the set. |
long |
ramBytesUsed()
Return the memory usage of this object in bytes.
|
getChildResources
public NotDocIdSet(int maxDoc, DocIdSet in)
public boolean isCacheable()
DocIdSet
CachingWrapperFilter
, if this DocIdSet
should be cached without copying it. The default is to return
false
. If you have an own DocIdSet
implementation
that does its iteration very effective and fast without doing disk I/O,
override this method and return true
.isCacheable
in class DocIdSet
public Bits bits() throws IOException
DocIdSet
Bits
interface for random access
to matching documents.bits
in class DocIdSet
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
.IOException
public long ramBytesUsed()
Accountable
public DocIdSetIterator iterator() throws IOException
DocIdSet
DocIdSetIterator
to access the set.
This implementation can return null
if there
are no docs that match.iterator
in class DocIdSet
IOException
Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.