public abstract class DocIdSet extends Object
iterator()
to provide access to the set.Modifier and Type | Field and Description |
---|---|
static DocIdSet |
EMPTY_DOCIDSET
An empty
DocIdSet instance for easy use, e.g. |
Constructor and Description |
---|
DocIdSet() |
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 into a BitSet. |
abstract DocIdSetIterator |
iterator()
Provides a
DocIdSetIterator to access the set. |
public static final DocIdSet EMPTY_DOCIDSET
DocIdSet
instance for easy use, e.g. in Filters that hit no documents.public abstract DocIdSetIterator iterator() throws IOException
DocIdSetIterator
to access the set.
This implementation can return null
or
EMPTY_DOCIDSET.iterator()
if there
are no docs that match.IOException
public Bits bits() throws IOException
Bits
interface for random access
to matching documents.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
.IOException
public boolean isCacheable()
CachingWrapperFilter
, if this DocIdSet
should be cached without copying it into a BitSet. 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.
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.