41                              bool throw_if_not_present)
    42         : db(db_), did(did_), current_wdf(0), current_termfreq(0)
    44     LOGCALL_CTOR(DB, 
"GlassTermList", db_ | did_ | throw_if_not_present);
    48         if (!throw_if_not_present) {
    68             msg = 
"Too little data for doclen in termlist";
    70             msg = 
"Overflowed value for doclen in termlist";
    79             msg = 
"Too little data for list size in termlist";
    81             msg = 
"Overflowed value for list size in termlist";
   114     LOGCALL_VOID(DB, 
"GlassTermList::accumulate_stats", stats);
   123     LOGCALL(DB, 
string, 
"GlassTermList::get_termname", NO_ARGS);
   156     bool wdf_in_reuse = 
false;
   159         size_t len = 
static_cast<unsigned char>(*
pos++);
   171     size_t append_len = 
static_cast<unsigned char>(*
pos++);
   179             msg = 
"Too little data for wdf in termlist";
   181             msg = 
"Overflowed value for wdf in termlist";
   202     LOGCALL(DB, 
bool, 
"GlassTermList::at_end", NO_ARGS);
 Xapian::termcount termlist_size
The number of entries in this termlist. 
 
Xapian::termcount positionlist_count() const
Return the length of the position list for the current position. 
 
std::string get_termname() const
Return the termname at the current position. 
 
Xapian::docid did
The document id that this TermList is for. 
 
Xapian::termcount get_doclength() const
Return the length of this document. 
 
A position list in a glass database. 
 
Xapian::doccount get_doccount() const
Virtual methods of Database::Internal. 
 
const char * end
Pointer to the end of the encoded tag value. 
 
#define LOGCALL_VOID(CATEGORY, FUNC, PARAMS)
 
Abstract base class for termlists. 
 
Convert types to std::string. 
 
GlassTermList(const GlassTermList &)
Don't allow copying. 
 
Xapian::termcount current_wdf
The wdf for the term at the current position. 
 
std::string current_term
The termname at the current position. 
 
const char * pos
Current position with the encoded tag value held in data. 
 
Xapian::termcount get_approx_size() const
Return approximate size of this termlist. 
 
Hierarchy of classes which Xapian can throw as exceptions. 
 
unsigned XAPIAN_TERMCOUNT_BASE_TYPE termcount
A counts of terms. 
 
void accumulate(size_t shard_index, Xapian::termcount wdf, Xapian::termcount doclen, Xapian::doccount subtf, Xapian::doccount subdbsize)
 
Collate statistics and calculate the term weights for the ESet. 
 
Xapian::Internal::intrusive_ptr< const GlassDatabase > db
The database we're reading data from. 
 
TermList * skip_to(const std::string &term)
Skip forward to the specified term. 
 
Xapian::doccount current_termfreq
The term frequency for the term at the current position. 
 
static std::string make_key(Xapian::docid did)
 
PositionList * open_position_list(Xapian::docid did, const string &term) const
Virtual methods of Database::Internal. 
 
string str(int value)
Convert int to std::string. 
 
GlassTermListTable termlist_table
Table storing term lists. 
 
Xapian::PositionIterator positionlist_begin() const
Return a PositionIterator for the current position. 
 
Class for iterating over term positions. 
 
bool at_end() const
Return true if the current position is past the last term in this list. 
 
#define LOGCALL_CTOR(CATEGORY, CLASS, PARAMS)
 
Indicates an attempt to access a document not present in the database. 
 
Xapian::termcount get_wdf() const
Return the wdf for the term at the current position. 
 
DatabaseCorruptError indicates database corruption was detected. 
 
void get_freqs(const string &term, Xapian::doccount *termfreq_ptr, Xapian::termcount *collfreq_ptr) const
Virtual methods of Database::Internal. 
 
Xapian::termcount doclen
The length of document did. 
 
bool get_exact_entry(const std::string &key, std::string &tag) const
Read an entry from the table, if and only if it is exactly that being asked for. 
 
unsigned XAPIAN_DOCID_BASE_TYPE doccount
A count of documents. 
 
std::string data
The tag value from the termlist table which holds the encoded termlist. 
 
size_t shard_index
Which shard of a multidatabase this is from. 
 
Collates statistics while calculating term weight in an ESet. 
 
Pack types into strings and unpack them again. 
 
bool unpack_uint(const char **p, const char *end, U *result)
Decode an unsigned integer from a string. 
 
TermList * next()
Advance the current position to the next term in the termlist. 
 
void accumulate_stats(Xapian::Internal::ExpandStats &stats) const
Collate weighting information for the current term. 
 
Various assertion macros. 
 
A TermList in a glass database. 
 
unsigned XAPIAN_DOCID_BASE_TYPE docid
A unique identifier for a document. 
 
Xapian::termcount get_unique_terms() const
Return the number of unique terms. 
 
A smart pointer that uses intrusive reference counting. 
 
virtual Xapian::termcount positionlist_count(Xapian::docid did, const string &term) const
Virtual methods of Database::Internal. 
 
#define LOGCALL(CATEGORY, TYPE, FUNC, PARAMS)
 
Xapian::doccount get_termfreq() const
Return the term frequency for the term at the current position.