43 want_wdfdocmax = wt->get_sumpart_needs_wdfdocmax_();
67 LOGCALL(MATCH,
double,
"SynonymPostList::get_weight", doclen | unique_terms);
85 if (wdf > doclen) wdf = doclen;
91 doclen = pltree->get_doclength(pl->get_docid());
95 RETURN(wt->get_sumpart(wdf, doclen, unique_terms, wdfdocmax));
101 LOGCALL(MATCH,
double,
"SynonymPostList::recalc_maxweight", NO_ARGS);
102 RETURN(wt->get_maxpart());
114 string desc =
"SynonymPostList(";
115 desc += pl->get_description();
void set_weight(const Xapian::Weight *wt_)
Set the weight object to be used for the synonym postlist.
double recalc_maxweight()
Recalculate the upper bound on what get_weight() can return.
double get_weight(Xapian::termcount doclen, Xapian::termcount unique_terms, Xapian::termcount wdfdocmax) const
Return the weight contribution for the current position.
PostList * skip_to(Xapian::docid did, double w_min)
Skip forward to the specified docid.
Xapian::termcount count_matching_subqs() const
Count the number of leaf subqueries which match at the current position.
std::string get_description() const
Return a string description of this object.
Xapian::termcount get_wdf() const
Return the wdf for the document at the current position.
PostList * skip_to(Xapian::docid, double w_min)
Skip forward to the specified docid.
Abstract base class for postlists.
PostList * next()
Advance the current position to the next document in the postlist.
Abstract base class for weighting schemes.
bool get_sumpart_needs_wdf_() const
#define LOGCALL(CATEGORY, TYPE, FUNC, PARAMS)
unsigned XAPIAN_TERMCOUNT_BASE_TYPE termcount
A counts of terms.
unsigned XAPIAN_DOCID_BASE_TYPE docid
A unique identifier for a document.
Various assertion macros.
Class for managing a tree of PostList objects.
Combine subqueries, weighting as if they are synonyms.