xapian-core  2.0.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
RemoteTermList Class Reference

Iterate terms in a remote document. More...

#include <remote_termlist.h>

+ Inheritance diagram for RemoteTermList:
+ Collaboration diagram for RemoteTermList:

Public Member Functions

 RemoteTermList (Xapian::termcount num_entries_, Xapian::termcount doclen_, Xapian::doccount db_size_, const RemoteDatabase *db_, Xapian::docid did_, std::string &&data_)
 Construct. More...
 
Xapian::termcount get_approx_size () const
 Return approximate size of this termlist. More...
 
void accumulate_stats (Xapian::Internal::ExpandStats &stats) const
 Collate weighting information for the current term. More...
 
Xapian::termcount get_wdf () const
 Return the wdf for the term at the current position. More...
 
Xapian::doccount get_termfreq () const
 Return the term frequency for the term at the current position. More...
 
TermListnext ()
 Advance the current position to the next term in the termlist. More...
 
TermListskip_to (std::string_view term)
 Skip forward to the specified term. More...
 
Xapian::termcount positionlist_count () const
 Return the length of the position list for the current position. More...
 
PositionListpositionlist_begin () const
 Return PositionList for the current position. More...
 
- Public Member Functions inherited from Xapian::TermIterator::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...
 
const std::string & get_termname () const
 Return the termname at the current position. More...
 
virtual const Xapian::VecCOW< Xapian::termpos > * get_vec_termpos () const
 Get pointer to VecCOW<termpos> if that's the internal representation. More...
 
- Public Member Functions inherited from Xapian::Internal::intrusive_base
 intrusive_base ()
 Construct with no references. More...
 

Private Member Functions

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

Private Attributes

Xapian::termcount current_wdf
 
Xapian::doccount current_termfreq
 
Xapian::termcount num_entries
 
Xapian::termcount doclen
 
Xapian::doccount db_size
 
Xapian::Internal::intrusive_ptr< const RemoteDatabasedb
 
Xapian::docid did
 
std::string data
 
const char * p = NULL
 

Additional Inherited Members

- Public Attributes inherited from Xapian::TermIterator::Internal
size_t shard_index = 0
 Which shard of a multidatabase this is from. More...
 
- Public Attributes inherited from Xapian::Internal::intrusive_base
unsigned _refs
 Reference count. More...
 
- Protected Member Functions inherited from Xapian::TermIterator::Internal
 Internal ()
 Only constructable as a base class for derived classes. More...
 
- Protected Attributes inherited from Xapian::TermIterator::Internal
std::string current_term
 The current term. More...
 

Detailed Description

Iterate terms in a remote document.

Definition at line 29 of file remote_termlist.h.

Constructor & Destructor Documentation

◆ RemoteTermList() [1/2]

RemoteTermList::RemoteTermList ( const RemoteTermList )
privatedelete

Don't allow copying.

◆ RemoteTermList() [2/2]

RemoteTermList::RemoteTermList ( Xapian::termcount  num_entries_,
Xapian::termcount  doclen_,
Xapian::doccount  db_size_,
const RemoteDatabase db_,
Xapian::docid  did_,
std::string &&  data_ 
)
inline

Construct.

Definition at line 56 of file remote_termlist.h.

Member Function Documentation

◆ accumulate_stats()

void RemoteTermList::accumulate_stats ( Xapian::Internal::ExpandStats stats) const
virtual

Collate weighting information for the current term.

Reimplemented from Xapian::TermIterator::Internal.

Definition at line 41 of file remote_termlist.cc.

References Xapian::Internal::ExpandStats::accumulate(), and Assert.

◆ get_approx_size()

Xapian::termcount RemoteTermList::get_approx_size ( ) const
virtual

Return approximate size of this termlist.

Implements Xapian::TermIterator::Internal.

Definition at line 33 of file remote_termlist.cc.

◆ get_termfreq()

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

Return the term frequency for the term at the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 58 of file remote_termlist.cc.

References Assert.

◆ get_wdf()

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

Return the wdf for the term at the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 51 of file remote_termlist.cc.

References Assert.

◆ next()

TermList * RemoteTermList::next ( )
virtual

Advance the current position to the next term in the termlist.

Implements Xapian::TermIterator::Internal.

Definition at line 65 of file remote_termlist.cc.

References p, unpack_string_append(), unpack_throw_serialisation_error(), and unpack_uint().

Referenced by skip_to().

◆ operator=()

void RemoteTermList::operator= ( const RemoteTermList )
privatedelete

Don't allow assignment.

◆ positionlist_begin()

PositionList * RemoteTermList::positionlist_begin ( ) const
virtual

Return PositionList for the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 104 of file remote_termlist.cc.

◆ positionlist_count()

Xapian::termcount RemoteTermList::positionlist_count ( ) const
virtual

Return the length of the position list for the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 98 of file remote_termlist.cc.

◆ skip_to()

TermList * RemoteTermList::skip_to ( std::string_view  term)
virtual

Skip forward to the specified term.

If the specified term isn't in the list, position ourselves on the first term after term (or at_end() if no terms after term exist).

Implements Xapian::TermIterator::Internal.

Definition at line 84 of file remote_termlist.cc.

References next(), p, and term.

Member Data Documentation

◆ current_termfreq

Xapian::doccount RemoteTermList::current_termfreq
private

Definition at line 38 of file remote_termlist.h.

◆ current_wdf

Xapian::termcount RemoteTermList::current_wdf
private

Definition at line 36 of file remote_termlist.h.

◆ data

std::string RemoteTermList::data
private

Definition at line 50 of file remote_termlist.h.

◆ db

Xapian::Internal::intrusive_ptr<const RemoteDatabase> RemoteTermList::db
private

Definition at line 46 of file remote_termlist.h.

◆ db_size

Xapian::doccount RemoteTermList::db_size
private

Definition at line 44 of file remote_termlist.h.

◆ did

Xapian::docid RemoteTermList::did
private

Definition at line 48 of file remote_termlist.h.

◆ doclen

Xapian::termcount RemoteTermList::doclen
private

Definition at line 42 of file remote_termlist.h.

◆ num_entries

Xapian::termcount RemoteTermList::num_entries
private

Definition at line 40 of file remote_termlist.h.

◆ p

const char* RemoteTermList::p = NULL
private

Definition at line 52 of file remote_termlist.h.


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