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

The list of words containing a particular trigram. More...

#include <honey_spelling.h>

+ Inheritance diagram for HoneySpellingTermList:
+ Collaboration diagram for HoneySpellingTermList:

Public Member Functions

 HoneySpellingTermList (const std::string &data_)
 Constructor. More...
 
 HoneySpellingTermList (const std::string &data_, const char *key)
 Constructor for head/bookend/tail terms. More...
 
Xapian::termcount get_approx_size () const
 Return approximate size of this termlist. 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...
 
virtual void accumulate_stats (Xapian::Internal::ExpandStats &stats) const
 Collate weighting information for the current term. 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

 HoneySpellingTermList (const HoneySpellingTermList &)
 Copying is not allowed. More...
 
void operator= (const HoneySpellingTermList &)
 Assignment is not allowed. More...
 

Private Attributes

std::string data
 The encoded data. More...
 
unsigned p = 0
 Position in the data. More...
 
int tail = 0
 Number of constant characters on the end of the value. 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 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

The list of words containing a particular trigram.

Definition at line 159 of file honey_spelling.h.

Constructor & Destructor Documentation

◆ HoneySpellingTermList() [1/3]

HoneySpellingTermList::HoneySpellingTermList ( const HoneySpellingTermList )
private

Copying is not allowed.

◆ HoneySpellingTermList() [2/3]

HoneySpellingTermList::HoneySpellingTermList ( const std::string &  data_)
inlineexplicit

Constructor.

Definition at line 182 of file honey_spelling.h.

◆ HoneySpellingTermList() [3/3]

HoneySpellingTermList::HoneySpellingTermList ( const std::string &  data_,
const char *  key 
)
inline

Member Function Documentation

◆ get_approx_size()

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

Return approximate size of this termlist.

Implements Xapian::TermIterator::Internal.

Definition at line 380 of file honey_spelling.cc.

◆ get_termfreq()

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

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

Implements Xapian::TermIterator::Internal.

Definition at line 394 of file honey_spelling.cc.

◆ get_wdf()

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

Return the wdf for the term at the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 388 of file honey_spelling.cc.

◆ next()

TermList * HoneySpellingTermList::next ( )
virtual

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

The list starts before the first term in the list, so next(), skip_to() or check() must be called before any methods which need the context of the current position.

Returns
Normally returns NULL to indicate success. If the end has been reached, returns this; if another non-NULL pointer is returned then the caller should substitute the returned pointer for its pointer to us, and then delete us. This "pruning" can only happen for a non-leaf subclass of this class.

Implements Xapian::TermIterator::Internal.

Definition at line 400 of file honey_spelling.cc.

References MAGIC_XOR_VALUE, p, rare, and usual.

Referenced by skip_to().

◆ operator=()

void HoneySpellingTermList::operator= ( const HoneySpellingTermList )
private

Assignment is not allowed.

◆ positionlist_begin()

PositionList * HoneySpellingTermList::positionlist_begin ( ) const
virtual

Return PositionList for the current position.

Implements Xapian::TermIterator::Internal.

Definition at line 454 of file honey_spelling.cc.

◆ positionlist_count()

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

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

Implements Xapian::TermIterator::Internal.

Definition at line 445 of file honey_spelling.cc.

◆ skip_to()

TermList * HoneySpellingTermList::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.

Returns
Normally returns NULL to indicate success. If no terms after term exist, returns this; if another non-NULL pointer is returned then the caller should substitute the returned pointer for its pointer to us, and then delete us. This "pruning" can only happen for a non-leaf subclass of this class.

Implements Xapian::TermIterator::Internal.

Definition at line 435 of file honey_spelling.cc.

References next(), and term.

Member Data Documentation

◆ data

std::string HoneySpellingTermList::data
private

The encoded data.

Definition at line 161 of file honey_spelling.h.

◆ p

unsigned HoneySpellingTermList::p = 0
private

Position in the data.

Definition at line 164 of file honey_spelling.h.

◆ tail

int HoneySpellingTermList::tail = 0
private

Number of constant characters on the end of the value.

Valid values once iterating are 0, 1, 2. Before iteration, can be 0 (no head or tail), 2 (two tails), -1 (one head, one tail -> 1 once iterating) or -2 (two heads, no tail -> 0 once iterating).

Definition at line 172 of file honey_spelling.h.

Referenced by HoneySpellingTermList().


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