xapian-core  1.4.30
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ContiguousAllDocsPostList Class Reference

A PostList iterating all docids when they form a contiguous range. More...

#include <contiguousalldocspostlist.h>

+ Inheritance diagram for ContiguousAllDocsPostList:
+ Collaboration diagram for ContiguousAllDocsPostList:

Public Member Functions

 ContiguousAllDocsPostList (Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal > db_, Xapian::doccount doccount_)
 Constructor. More...
 
Xapian::doccount get_termfreq () const
 Return the term frequency. More...
 
Xapian::docid get_docid () const
 Return the current docid. More...
 
Xapian::termcount get_doclength () const
 Return the length of current document. More...
 
Xapian::termcount get_unique_terms () const
 Return the number of unique terms. More...
 
Xapian::termcount get_wdf () const
 Always return 1 (wdf isn't totally meaningful for us). More...
 
PositionListread_position_list ()
 Throws InvalidOperationError. More...
 
PositionListopen_position_list () const
 Throws InvalidOperationError. More...
 
PostListnext (double w_min)
 Advance to the next document. More...
 
PostListskip_to (Xapian::docid target, double w_min)
 Skip ahead to next document with docid >= target. More...
 
bool at_end () const
 Return true if and only if we're off the end of the list. More...
 
Xapian::termcount get_wdf_upper_bound () const
 Always return 1 (wdf isn't totally meaningful for us). More...
 
std::string get_description () const
 Return a string description of this object. More...
 
- Public Member Functions inherited from LeafPostList
 ~LeafPostList ()
 
void set_termweight (const Xapian::Weight *weight_)
 Set the weighting scheme to use during matching. More...
 
double resolve_lazy_termweight (Xapian::Weight *weight_, Xapian::Weight::Internal *stats, Xapian::termcount qlen, Xapian::termcount wqf, double factor)
 
Xapian::doccount get_termfreq_min () const
 Get a lower bound on the number of documents indexed by this term. More...
 
Xapian::doccount get_termfreq_max () const
 Get an upper bound on the number of documents indexed by this term. More...
 
Xapian::doccount get_termfreq_est () const
 Get an estimate of the number of documents indexed by this term. More...
 
double get_maxweight () const
 Return an upper bound on what get_weight() can return. More...
 
double get_weight () const
 Return the weight contribution for the current position. More...
 
double recalc_maxweight ()
 Recalculate the upper bound on what get_weight() can return. More...
 
TermFreqs get_termfreq_est_using_stats (const Xapian::Weight::Internal &stats) const
 Get an estimate for the termfreq and reltermfreq, given the stats. More...
 
Xapian::termcount count_matching_subqs () const
 Count the number of leaf subqueries which match at the current position. More...
 
void gather_position_lists (OrPositionList *orposlist)
 Gather PositionList* objects for a subtree. More...
 
virtual LeafPostListopen_nearby_postlist (const std::string &term_) const
 Open another postlist from the same database. More...
 
void set_term (const std::string &term_)
 Set the term name. More...
 
- Public Member Functions inherited from Xapian::PostingIterator::Internal
virtual ~Internal ()
 We have virtual methods and want to be able to delete derived classes using a pointer to the base class, so we need a virtual destructor. More...
 
virtual const std::string * get_sort_key () const
 
virtual const std::string * get_collapse_key () const
 If the collapse key is already known, return it. More...
 
virtual Internalcheck (Xapian::docid did, double w_min, bool &valid)
 Check if the specified docid occurs in this postlist. More...
 
Internalnext ()
 Advance the current position to the next document in the postlist. More...
 
Internalskip_to (Xapian::docid did)
 Skip forward to the specified docid. More...
 
- Public Member Functions inherited from Xapian::Internal::intrusive_base
 intrusive_base ()
 Construct with no references. More...
 

Private Member Functions

void operator= (const ContiguousAllDocsPostList &)
 Don't allow assignment. More...
 
 ContiguousAllDocsPostList (const ContiguousAllDocsPostList &)
 Don't allow copying. More...
 

Private Attributes

Xapian::Internal::intrusive_ptr< const Xapian::Database::Internaldb
 The database we're iterating over. More...
 
Xapian::docid did
 The current document id. More...
 
Xapian::doccount doccount
 The number of documents in the database. More...
 

Additional Inherited Members

- Public Attributes inherited from Xapian::Internal::intrusive_base
unsigned _refs
 Reference count. More...
 
- Protected Member Functions inherited from LeafPostList
 LeafPostList (const std::string &term_)
 Only constructable as a base class for derived classes. More...
 
- Protected Member Functions inherited from Xapian::PostingIterator::Internal
 Internal ()
 Only constructable as a base class for derived classes. More...
 
- Protected Attributes inherited from LeafPostList
const Xapian::Weightweight
 
bool need_doclength
 
bool need_unique_terms
 
std::string term
 The term name for this postlist (empty for an alldocs postlist). More...
 

Detailed Description

A PostList iterating all docids when they form a contiguous range.

Definition at line 31 of file contiguousalldocspostlist.h.

Constructor & Destructor Documentation

◆ ContiguousAllDocsPostList() [1/2]

ContiguousAllDocsPostList::ContiguousAllDocsPostList ( const ContiguousAllDocsPostList )
private

Don't allow copying.

◆ ContiguousAllDocsPostList() [2/2]

ContiguousAllDocsPostList::ContiguousAllDocsPostList ( Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal db_,
Xapian::doccount  doccount_ 
)
inline

Constructor.

Definition at line 49 of file contiguousalldocspostlist.h.

Member Function Documentation

◆ at_end()

bool ContiguousAllDocsPostList::at_end ( ) const
virtual

Return true if and only if we're off the end of the list.

Implements Xapian::PostingIterator::Internal.

Definition at line 112 of file contiguousalldocspostlist.cc.

◆ get_description()

string ContiguousAllDocsPostList::get_description ( ) const
virtual

Return a string description of this object.

Implements Xapian::PostingIterator::Internal.

Definition at line 124 of file contiguousalldocspostlist.cc.

References Xapian::Internal::str().

◆ get_docid()

Xapian::docid ContiguousAllDocsPostList::get_docid ( ) const
virtual

Return the current docid.

Implements Xapian::PostingIterator::Internal.

Definition at line 41 of file contiguousalldocspostlist.cc.

References Assert.

◆ get_doclength()

Xapian::termcount ContiguousAllDocsPostList::get_doclength ( ) const
virtual

Return the length of current document.

Implements Xapian::PostingIterator::Internal.

Definition at line 49 of file contiguousalldocspostlist.cc.

References Assert.

◆ get_termfreq()

Xapian::doccount ContiguousAllDocsPostList::get_termfreq ( ) const
virtual

Return the term frequency.

For an all documents postlist, this is the number of documents in the database.

Implements LeafPostList.

Definition at line 35 of file contiguousalldocspostlist.cc.

◆ get_unique_terms()

Xapian::termcount ContiguousAllDocsPostList::get_unique_terms ( ) const
virtual

Return the number of unique terms.

Implements Xapian::PostingIterator::Internal.

Definition at line 57 of file contiguousalldocspostlist.cc.

References Assert.

◆ get_wdf()

Xapian::termcount ContiguousAllDocsPostList::get_wdf ( ) const
virtual

Always return 1 (wdf isn't totally meaningful for us).

Reimplemented from Xapian::PostingIterator::Internal.

Definition at line 65 of file contiguousalldocspostlist.cc.

References Assert.

◆ get_wdf_upper_bound()

Xapian::termcount ContiguousAllDocsPostList::get_wdf_upper_bound ( ) const
virtual

Always return 1 (wdf isn't totally meaningful for us).

Implements LeafPostList.

Definition at line 118 of file contiguousalldocspostlist.cc.

◆ next()

PostList * ContiguousAllDocsPostList::next ( double  w_min)
virtual

Advance to the next document.

Implements Xapian::PostingIterator::Internal.

Definition at line 86 of file contiguousalldocspostlist.cc.

References Assert.

◆ open_position_list()

PositionList * ContiguousAllDocsPostList::open_position_list ( ) const
virtual

Throws InvalidOperationError.

Reimplemented from Xapian::PostingIterator::Internal.

Definition at line 80 of file contiguousalldocspostlist.cc.

Referenced by read_position_list().

◆ operator=()

void ContiguousAllDocsPostList::operator= ( const ContiguousAllDocsPostList )
private

Don't allow assignment.

◆ read_position_list()

PositionList * ContiguousAllDocsPostList::read_position_list ( )
virtual

Throws InvalidOperationError.

Reimplemented from Xapian::PostingIterator::Internal.

Definition at line 73 of file contiguousalldocspostlist.cc.

References open_position_list().

◆ skip_to()

PostList * ContiguousAllDocsPostList::skip_to ( Xapian::docid  target,
double  w_min 
)
virtual

Skip ahead to next document with docid >= target.

Implements Xapian::PostingIterator::Internal.

Definition at line 98 of file contiguousalldocspostlist.cc.

References Assert.

Member Data Documentation

◆ db

Xapian::Internal::intrusive_ptr<const Xapian::Database::Internal> ContiguousAllDocsPostList::db
private

The database we're iterating over.

Definition at line 39 of file contiguousalldocspostlist.h.

◆ did

Xapian::docid ContiguousAllDocsPostList::did
private

The current document id.

Definition at line 42 of file contiguousalldocspostlist.h.

◆ doccount

Xapian::doccount ContiguousAllDocsPostList::doccount
private

The number of documents in the database.

Definition at line 45 of file contiguousalldocspostlist.h.


The documentation for this class was generated from the following files: