#include <enquire.h>

Public Types | |
| typedef std::bidirectional_iterator_tag | iterator_category |
| Allow use as an STL iterator. | |
| typedef Xapian::docid | value_type |
| Allow use as an STL iterator. | |
| typedef Xapian::doccount_diff | difference_type |
| Allow use as an STL iterator. | |
| typedef Xapian::docid * | pointer |
| Allow use as an STL iterator. | |
| typedef Xapian::docid & | reference |
| Allow use as an STL iterator. | |
Public Member Functions | |
| MSetIterator () | |
| Create an uninitialised iterator; this cannot be used, but is convenient syntactically. | |
| MSetIterator (const MSetIterator &other) | |
| Copying is allowed (and is cheap). | |
| void | operator= (const MSetIterator &other) |
| Assignment is allowed (and is cheap). | |
| MSetIterator & | operator++ () |
| Advance the iterator. | |
| MSetIterator | operator++ (int) |
| Advance the iterator (postfix variant). | |
| MSetIterator & | operator-- () |
| Decrement the iterator. | |
| MSetIterator | operator-- (int) |
| Decrement the iterator (postfix variant). | |
| Xapian::docid | operator* () const |
| Get the document ID for the current position. | |
| Xapian::Document | get_document () const |
| Get a Xapian::Document object for the current position. | |
| Xapian::doccount | get_rank () const |
| Get the rank of the document at the current position. | |
| Xapian::weight | get_weight () const |
| Get the weight of the document at the current position. | |
| std::string | get_collapse_key () const |
| Get the collapse key for this document. | |
| Xapian::doccount | get_collapse_count () const |
| Get an estimate of the number of documents that have been collapsed into this one. | |
| Xapian::percent | get_percent () const |
| This returns the weight of the document as a percentage score. | |
| std::string | get_description () const |
| Return a string describing this object. | |
Private Member Functions | |
| MSetIterator (Xapian::doccount index_, const MSet &mset_) | |
Private Attributes | |
| Xapian::doccount | index |
| MSet | mset |
Friends | |
| class | MSet |
| bool | operator== (const MSetIterator &a, const MSetIterator &b) |
| Equality test for MSetIterator objects. | |
| bool | operator!= (const MSetIterator &a, const MSetIterator &b) |
| Inequality test for MSetIterator objects. | |
This is used for access to individual results of a match.
Definition at line 264 of file enquire.h.
| typedef std::bidirectional_iterator_tag Xapian::MSetIterator::iterator_category |
| Xapian::MSetIterator::MSetIterator | ( | Xapian::doccount | index_, | |
| const MSet & | mset_ | |||
| ) | [inline, private] |
| Xapian::MSetIterator::MSetIterator | ( | ) | [inline] |
| Xapian::MSetIterator::MSetIterator | ( | const MSetIterator & | other | ) | [inline] |
| Xapian::doccount Xapian::MSetIterator::get_collapse_count | ( | ) | const |
Get an estimate of the number of documents that have been collapsed into this one.
The estimate will always be less than or equal to the actual number of other documents satisfying the match criteria with the same collapse key as this document.
This method may return 0 even though there are other documents with the same collapse key which satisfying the match criteria. However if this method returns non-zero, there definitely are other such documents. So this method may be used to inform the user that there are "at least N other matches in this group", or to control whether to offer a "show other documents in this group" feature (but note that it may not offer it in every case where it would show other documents).
Definition at line 589 of file omenquire.cc.
References index, Xapian::MSet::internal, and mset.
| std::string Xapian::MSetIterator::get_collapse_key | ( | ) | const |
Get the collapse key for this document.
Definition at line 583 of file omenquire.cc.
References index, Xapian::MSet::internal, and mset.
| string Xapian::MSetIterator::get_description | ( | ) | const |
Return a string describing this object.
Definition at line 602 of file omenquire.cc.
References index, and Xapian::Internal::str().
Referenced by DEFINE_TESTCASE().
| Document Xapian::MSetIterator::get_document | ( | ) | const |
Get a Xapian::Document object for the current position.
This method returns a Xapian::Document object which provides the information about the document pointed to by the MSetIterator.
If the underlying database has suitable support, using this call (rather than asking the database for a document based on its document ID) will enable the system to ensure that the correct data is returned, and that the document has not been deleted or changed since the query was performed.
| Xapian::DocNotFoundError | The document specified could not be found in the database. |
Definition at line 571 of file omenquire.cc.
References index, Xapian::MSet::internal, and mset.
Referenced by DEFINE_TESTCASE().
| Xapian::percent Xapian::MSetIterator::get_percent | ( | ) | const |
This returns the weight of the document as a percentage score.
The return value will be an integer in the range 0 to 100: 0 meaning that the item did not match the query at all.
The intention is that the highest weighted document will get 100 if it matches all the weight-contributing terms in the query. However, currently it may get a lower percentage score if you use a MatchDecider and the sorting is primarily by value. In this case, the percentage for a particular document may vary depending on the first, max_size, and checkatleast parameters passed to Enquire::get_mset() (this bug is hard to fix without having to apply the MatchDecider to potentially many more documents, which is potentially costly).
Definition at line 595 of file omenquire.cc.
References get_weight(), Xapian::MSet::internal, LOGCALL, mset, and RETURN.
Referenced by DEFINE_TESTCASE().
| Xapian::doccount Xapian::MSetIterator::get_rank | ( | ) | const [inline] |
| Xapian::weight Xapian::MSetIterator::get_weight | ( | ) | const |
Get the weight of the document at the current position.
Definition at line 577 of file omenquire.cc.
References index, Xapian::MSet::internal, and mset.
Referenced by Xapian::MSet::convert_to_percent(), DEFINE_TESTCASE(), get_percent(), mset_range_is_same(), mset_range_is_same_weights(), and print_mset_weights().
| Xapian::docid Xapian::MSetIterator::operator* | ( | ) | const |
Get the document ID for the current position.
Definition at line 565 of file omenquire.cc.
References index, Xapian::MSet::internal, and mset.
| MSetIterator Xapian::MSetIterator::operator++ | ( | int | ) | [inline] |
| MSetIterator& Xapian::MSetIterator::operator++ | ( | ) | [inline] |
| MSetIterator Xapian::MSetIterator::operator-- | ( | int | ) | [inline] |
| MSetIterator& Xapian::MSetIterator::operator-- | ( | ) | [inline] |
| void Xapian::MSetIterator::operator= | ( | const MSetIterator & | other | ) | [inline] |
| bool operator!= | ( | const MSetIterator & | a, | |
| const MSetIterator & | b | |||
| ) | [friend] |
| bool operator== | ( | const MSetIterator & | a, | |
| const MSetIterator & | b | |||
| ) | [friend] |
Xapian::doccount Xapian::MSetIterator::index [private] |
Definition at line 273 of file enquire.h.
Referenced by Xapian::MSet::fetch(), get_collapse_count(), get_collapse_key(), get_description(), get_document(), get_weight(), MSetIterator(), Xapian::operator!=(), operator*(), operator=(), and Xapian::operator==().
MSet Xapian::MSetIterator::mset [private] |
Definition at line 274 of file enquire.h.
Referenced by get_collapse_count(), get_collapse_key(), get_document(), get_percent(), get_weight(), MSetIterator(), operator*(), and operator=().