21 #ifndef XAPIAN_INCLUDED_GLASS_SYNONYM_H 22 #define XAPIAN_INCLUDED_GLASS_SYNONYM_H 67 last_synonyms.clear();
74 void add_synonym(
const std::string & term,
const std::string & synonym);
80 void remove_synonym(
const std::string & term,
const std::string & synonym);
86 void clear_synonyms(
const std::string & term);
92 TermList * open_termlist(
const std::string & term);
141 const string & prefix_)
142 : database(database_), cursor(cursor_), prefix(prefix_)
147 if (prefix.empty()) {
163 string get_termname()
const;
172 TermList * skip_to(
const string &tname);
178 #endif // XAPIAN_INCLUDED_GLASS_SYNONYM_H
GlassSynonymTermList(Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal > database_, GlassCursor *cursor_, const string &prefix_)
XAPIAN_REVISION_TYPE rev
Revision number of a database.
void find_entry_lt(const string &key)
Position the cursor on the highest entry with key < key.
uint4 glass_revision_number_t
The revision number of a glass database.
Subclass of GlassTable for deriving lazy tables from.
Abstract base class for termlists.
Xapian::Internal::intrusive_ptr< const Xapian::Database::Internal > database
Keep a reference to our database to stop it being deleted.
std::set< std::string > last_synonyms
The synonyms for the last term which was updated.
void flush_db()
Flush any outstanding changes to the DB file of the table.
bool is_modified() const
Determine whether the object contains uncommitted modifications.
GlassSynonymTable(int fd, off_t offset_, bool readonly)
Abstract base class for iterating all terms in a database.
GlassCursor * cursor
A cursor which runs through the synonym table reading termnames from the keys.
A cursor pointing to a position in a Btree table, for reading several entries in order, or finding approximate matches.
void flush_db()
Override methods of GlassTable.
GlassSynonymTable(const std::string &dbdir, bool readonly)
Create a new GlassSynonymTable object.
std::string last_term
The last term which was updated.
unsigned XAPIAN_DOCID_BASE_TYPE doccount
A count of documents.
void cancel(const RootInfo &root_info, glass_revision_number_t rev)
Override methods of GlassTable.
string prefix
The prefix to restrict the terms to.
Abstract base class for termlists.
Abstract base class for iterating all terms in a database.
void cancel(const RootInfo &root_info, glass_revision_number_t rev)
Cancel any outstanding changes.
bool find_entry(const string &key)
Position the cursor on the highest entry with key <= key.
bool is_modified() const
Override methods of GlassTable.