Lucene++ - a full-featured, c++ search engine
API Documentation
Abstract decorator class for a DocIdSet implementation that provides on-demand filtering/validation mechanism on a given DocIdSet. More...
#include <FilteredDocIdSet.h>
Public Member Functions | |
FilteredDocIdSet (const DocIdSetPtr &innerSet) | |
virtual | ~FilteredDocIdSet () |
virtual String | getClassName () |
boost::shared_ptr< FilteredDocIdSet > | shared_from_this () |
virtual bool | isCacheable () |
This DocIdSet implementation is cacheable if the inner set is cacheable. | |
virtual DocIdSetIteratorPtr | iterator () |
Implementation of the contract to build a DocIdSetIterator. | |
![]() | |
virtual | ~DocIdSet () |
boost::shared_ptr< DocIdSet > | shared_from_this () |
![]() | |
virtual | ~LuceneObject () |
virtual void | initialize () |
Called directly after instantiation to create objects that depend on this object being fully constructed. | |
virtual LuceneObjectPtr | clone (const LuceneObjectPtr &other=LuceneObjectPtr()) |
Return clone of this object. | |
virtual int32_t | hashCode () |
Return hash code for this object. | |
virtual bool | equals (const LuceneObjectPtr &other) |
Return whether two objects are equal. | |
virtual int32_t | compareTo (const LuceneObjectPtr &other) |
Compare two objects. | |
virtual String | toString () |
Returns a string representation of the object. | |
![]() | |
virtual | ~LuceneSync () |
virtual SynchronizePtr | getSync () |
Return this object synchronize lock. | |
virtual LuceneSignalPtr | getSignal () |
Return this object signal. | |
virtual void | lock (int32_t timeout=0) |
Lock this object using an optional timeout. | |
virtual void | unlock () |
Unlock this object. | |
virtual bool | holdsLock () |
Returns true if this object is currently locked by current thread. | |
virtual void | wait (int32_t timeout=0) |
Wait for signal using an optional timeout. | |
virtual void | notifyAll () |
Notify all threads waiting for signal. | |
Static Public Member Functions | |
static String | _getClassName () |
![]() | |
static String | _getClassName () |
static DocIdSetPtr | EMPTY_DOCIDSET () |
An empty {. | |
Protected Member Functions | |
virtual bool | match (int32_t docid)=0 |
Validation method to determine whether a docid should be in the result set. | |
![]() | |
LuceneObject () | |
Protected Attributes | |
DocIdSetPtr | innerSet |
![]() | |
SynchronizePtr | objectLock |
LuceneSignalPtr | objectSignal |
Abstract decorator class for a DocIdSet implementation that provides on-demand filtering/validation mechanism on a given DocIdSet.
Technically, this same functionality could be achieved with ChainedFilter (under contrib/misc), however the benefit of this class is it never materializes the full bitset for the filter. Instead, the match
method is invoked on-demand, per docID visited during searching. If you know few docIDs will be visited, and the logic behind match
is relatively costly, this may be a better way to filter than ChainedFilter.
Lucene::FilteredDocIdSet::FilteredDocIdSet | ( | const DocIdSetPtr & | innerSet | ) |
innerSet | Underlying DocIdSet |
|
virtual |
|
inlinestatic |
|
inlinevirtual |
Reimplemented from Lucene::DocIdSet.
|
virtual |
This DocIdSet implementation is cacheable if the inner set is cacheable.
Reimplemented from Lucene::DocIdSet.
|
virtual |
Implementation of the contract to build a DocIdSetIterator.
Implements Lucene::DocIdSet.
|
protectedpure virtual |
Validation method to determine whether a docid should be in the result set.
docid | docid to be tested |
|
inline |
|
protected |