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

A reusable position list in a glass database. More...

#include <glass_positionlist.h>

+ Inheritance diagram for GlassRePositionList:
+ Collaboration diagram for GlassRePositionList:

Public Member Functions

 GlassRePositionList (const GlassTable *table)
 Constructor. More...
 
void assign_data (std::string &&data)
 Fill list with data, and move the position to the start. More...
 
void read_data (Xapian::docid did, std::string_view term)
 Fill list with data, and move the position to the start. More...
 
- Public Member Functions inherited from GlassBasePositionList
 GlassBasePositionList ()
 Default constructor. More...
 
Xapian::termcount get_approx_size () const
 Returns size of position list. More...
 
Xapian::termpos back () const
 Return the final entry in this positionlist. More...
 
Xapian::termpos get_position () const
 Returns current position. More...
 
bool next ()
 Advance to the next term position in the list. More...
 
bool skip_to (Xapian::termpos termpos)
 Advance to the first term position which is at least termpos. More...
 
- Public Member Functions inherited from Xapian::PositionIterator::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...
 
- Public Member Functions inherited from Xapian::Internal::intrusive_base
 intrusive_base ()
 Construct with no references. More...
 

Private Member Functions

 GlassRePositionList (const GlassRePositionList &)=delete
 Copying is not allowed. More...
 
GlassRePositionListoperator= (const GlassRePositionList &)=delete
 Assignment is not allowed. More...
 

Private Attributes

GlassCursor cursor
 Cursor for locating multiple entries efficiently. More...
 

Additional Inherited Members

- Public Attributes inherited from Xapian::Internal::intrusive_base
unsigned _refs
 Reference count. More...
 
- Protected Member Functions inherited from GlassBasePositionList
void set_data (std::string_view data)
 Set positional data and start to decode it. More...
 
- Protected Member Functions inherited from Xapian::PositionIterator::Internal
 Internal ()
 Only constructable as a base class for derived classes. More...
 
- Protected Attributes inherited from GlassBasePositionList
BitReader rd
 Interpolative decoder. More...
 
Xapian::termpos current_pos
 Current entry. More...
 
Xapian::termpos last
 Last entry. More...
 
Xapian::termcount size
 Number of entries. More...
 
bool have_started
 Have we started iterating yet? More...
 

Detailed Description

A reusable position list in a glass database.

Definition at line 106 of file glass_positionlist.h.

Constructor & Destructor Documentation

◆ GlassRePositionList() [1/2]

GlassRePositionList::GlassRePositionList ( const GlassRePositionList )
privatedelete

Copying is not allowed.

◆ GlassRePositionList() [2/2]

GlassRePositionList::GlassRePositionList ( const GlassTable table)
inlineexplicit

Constructor.

Definition at line 119 of file glass_positionlist.h.

Member Function Documentation

◆ assign_data()

void GlassRePositionList::assign_data ( std::string &&  data)

Fill list with data, and move the position to the start.

Definition at line 200 of file glass_positionlist.cc.

References LOGCALL_VOID.

Referenced by GlassWritableDatabase::read_position_list().

◆ operator=()

GlassRePositionList& GlassRePositionList::operator= ( const GlassRePositionList )
privatedelete

Assignment is not allowed.

◆ read_data()

void GlassRePositionList::read_data ( Xapian::docid  did,
std::string_view  term 
)

Fill list with data, and move the position to the start.

Definition at line 213 of file glass_positionlist.cc.

References LOGCALL_VOID, GlassPositionListTable::make_key(), and term.

Referenced by GlassDatabase::read_position_list().

Member Data Documentation

◆ cursor

GlassCursor GlassRePositionList::cursor
private

Cursor for locating multiple entries efficiently.

Definition at line 108 of file glass_positionlist.h.


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