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. | |
| Public Member Functions inherited from Lucene::DocIdSet | |
| virtual | ~DocIdSet () |
| boost::shared_ptr< DocIdSet > | shared_from_this () |
| Public Member Functions inherited from Lucene::LuceneObject | |
| 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. | |
| Public Member Functions inherited from Lucene::LuceneSync | |
| 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 Public Member Functions inherited from Lucene::DocIdSet | |
| 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. | |
| Protected Member Functions inherited from Lucene::LuceneObject | |
| LuceneObject () | |
Protected Attributes | |
| DocIdSetPtr | innerSet |
| Protected Attributes inherited from Lucene::LuceneSync | |
| 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 | ) |
|
virtual |
|
inlinestatic |
References FilteredDocIdSet().
|
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 |
Referenced by FilteredDocIdSet().