22 #ifndef XAPIAN_INCLUDED_TERMITERATOR_H
23 #define XAPIAN_INCLUDED_TERMITERATOR_H
25 #if !defined XAPIAN_IN_XAPIAN_H && !defined XAPIAN_LIB_BUILD
26 # error Never use <xapian/termiterator.h> directly; include <xapian.h> instead.
57 #ifdef XAPIAN_MOVE_SEMANTICS
60 : internal(o.internal) {
67 if (
internal) decref();
68 internal = o.internal;
85 if (
internal) decref();
119 const std::string & term(**
this);
133 void skip_to(
const std::string &term);
136 std::string get_description()
const;
176 return a.internal == b.internal;
180 XAPIAN_NOTHROW(
operator!=(
const TermIterator &a,
const TermIterator &b));
Compiler attribute macros.
Class for iterating over term positions.
Abstract base class for termlists.
Class for iterating over a list of terms.
DerefWrapper_< std::string > operator++(int)
Advance the iterator to the next position (postfix version).
Xapian::termcount_diff difference_type
PositionIterator positionlist_end() const
Return an end PositionIterator for the current term.
~TermIterator()
Destructor.
TermIterator()
Default constructor.
std::input_iterator_tag iterator_category
Class for wrapping type returned by an input_iterator.
The Xapian namespace contains public interfaces for the Xapian library.
XAPIAN_TERMCOUNT_BASE_TYPE termcount_diff
A signed difference between two counts of terms.
unsigned XAPIAN_TERMCOUNT_BASE_TYPE termcount
A counts of terms.
unsigned XAPIAN_DOCID_BASE_TYPE doccount
A count of documents.
bool operator==(const ESetIterator &a, const ESetIterator &b)
Equality test for ESetIterator objects.
bool operator!=(const ESetIterator &a, const ESetIterator &b)
Inequality test for ESetIterator objects.
const Query operator*(double factor, const Query &q)
Scale a Xapian::Query object using OP_SCALE_WEIGHT.
Class for iterating over term positions.
Define XAPIAN_VISIBILITY_* macros.
#define XAPIAN_VISIBILITY_DEFAULT