xapian-core  1.4.27
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ChertSpellingWordsList Class Reference

#include <chert_spellingwordslist.h>

+ Inheritance diagram for ChertSpellingWordsList:
+ Collaboration diagram for ChertSpellingWordsList:

Public Member Functions

 ChertSpellingWordsList (Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal > database_, ChertCursor *cursor_)
 
 ~ChertSpellingWordsList ()
 Destructor. More...
 
std::string get_termname () const
 Returns the current termname. More...
 
Xapian::doccount get_termfreq () const
 Returns the term frequency of the current term. More...
 
TermListnext ()
 Advance to the next term in the list. More...
 
TermListskip_to (const std::string &tname)
 Advance to the first term which is >= tname. More...
 
bool at_end () const
 True if we're off the end of the list. More...
 
- Public Member Functions inherited from AllTermsList
virtual Xapian::termcount get_approx_size () const
 Return approximate size of this termlist. More...
 
virtual Xapian::termcount get_wdf () const
 Return the wdf for the term at the current position. More...
 
virtual Xapian::termcount positionlist_count () const
 Return true if the current position is past the last term in this list. More...
 
virtual Xapian::PositionIterator positionlist_begin () const
 Return a PositionIterator 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...
 
virtual void accumulate_stats (Xapian::Internal::ExpandStats &stats) const
 Collate weighting information for the current term. More...
 
virtual const std::vector< Xapian::termpos > * get_vector_termpos () const
 Get pointer to vector<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

 ChertSpellingWordsList (const ChertSpellingWordsList &)
 Copying is not allowed. More...
 
void operator= (const ChertSpellingWordsList &)
 Assignment is not allowed. More...
 
void read_termfreq () const
 Read and cache the term frequency. More...
 

Private Attributes

Xapian::Internal::intrusive_ptr< const Xapian::Database::Internaldatabase
 Keep a reference to our database to stop it being deleted. More...
 
ChertCursorcursor
 A cursor which runs through the spelling table reading termnames from the keys. More...
 
Xapian::termcount termfreq
 The term frequency of the term at the current position. More...
 

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 AllTermsList
 AllTermsList ()
 Only constructable as a base class for derived classes. More...
 
- Protected Member Functions inherited from Xapian::TermIterator::Internal
 Internal ()
 Only constructable as a base class for derived classes. More...
 

Detailed Description

Definition at line 31 of file chert_spellingwordslist.h.

Constructor & Destructor Documentation

◆ ChertSpellingWordsList() [1/2]

ChertSpellingWordsList::ChertSpellingWordsList ( const ChertSpellingWordsList )
private

Copying is not allowed.

◆ ChertSpellingWordsList() [2/2]

ChertSpellingWordsList::ChertSpellingWordsList ( Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal database_,
ChertCursor cursor_ 
)
inline

◆ ~ChertSpellingWordsList()

ChertSpellingWordsList::~ChertSpellingWordsList ( )

Destructor.

Definition at line 34 of file chert_spellingwordslist.cc.

References cursor, and LOGCALL_DTOR.

Referenced by ChertSpellingWordsList().

Member Function Documentation

◆ at_end()

bool ChertSpellingWordsList::at_end ( ) const
virtual

True if we're off the end of the list.

Implements AllTermsList.

Definition at line 102 of file chert_spellingwordslist.cc.

References ChertCursor::after_end(), cursor, LOGCALL, and RETURN.

Referenced by ChertSpellingWordsList(), get_termfreq(), get_termname(), next(), and skip_to().

◆ get_termfreq()

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

Returns the term frequency of the current term.

Either next() or skip_to() must have been called before this method can be called.

Implements AllTermsList.

Definition at line 52 of file chert_spellingwordslist.cc.

References Assert, at_end(), ChertCursor::current_key, ChertCursor::current_tag, cursor, LOGCALL, ChertCursor::read_tag(), RETURN, and unpack_uint_last().

Referenced by ChertSpellingWordsList().

◆ get_termname()

string ChertSpellingWordsList::get_termname ( ) const
virtual

Returns the current termname.

Either next() or skip_to() must have been called before this method can be called.

Implements AllTermsList.

Definition at line 41 of file chert_spellingwordslist.cc.

References Assert, at_end(), ChertCursor::current_key, cursor, LOGCALL, and RETURN.

Referenced by ChertSpellingWordsList().

◆ next()

TermList * ChertSpellingWordsList::next ( )
virtual

Advance to the next term in the list.

Implements AllTermsList.

Definition at line 70 of file chert_spellingwordslist.cc.

References ChertCursor::after_end(), Assert, at_end(), ChertCursor::current_key, cursor, LOGCALL, ChertCursor::next(), RETURN, startswith(), and ChertCursor::to_end().

Referenced by ChertSpellingWordsList().

◆ operator=()

void ChertSpellingWordsList::operator= ( const ChertSpellingWordsList )
private

Assignment is not allowed.

◆ read_termfreq()

void ChertSpellingWordsList::read_termfreq ( ) const
private

Read and cache the term frequency.

◆ skip_to()

TermList * ChertSpellingWordsList::skip_to ( const std::string &  tname)
virtual

Advance to the first term which is >= tname.

Implements AllTermsList.

Definition at line 85 of file chert_spellingwordslist.cc.

References ChertCursor::after_end(), Assert, at_end(), ChertCursor::current_key, cursor, ChertCursor::find_entry_ge(), LOGCALL, RETURN, startswith(), and ChertCursor::to_end().

Referenced by ChertSpellingWordsList().

Member Data Documentation

◆ cursor

ChertCursor* ChertSpellingWordsList::cursor
private

A cursor which runs through the spelling table reading termnames from the keys.

Definition at line 44 of file chert_spellingwordslist.h.

Referenced by at_end(), get_termfreq(), get_termname(), next(), skip_to(), and ~ChertSpellingWordsList().

◆ database

Xapian::Internal::intrusive_ptr<const Xapian::Database::Internal> ChertSpellingWordsList::database
private

Keep a reference to our database to stop it being deleted.

Definition at line 39 of file chert_spellingwordslist.h.

◆ termfreq

Xapian::termcount ChertSpellingWordsList::termfreq
mutableprivate

The term frequency of the term at the current position.

If this value is zero, then we haven't read the term frequency or collection frequency for the current term yet. We need to call read_termfreq() to read these.

Definition at line 52 of file chert_spellingwordslist.h.


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