21 #ifndef XAPIAN_INCLUDED_ESET_H
22 #define XAPIAN_INCLUDED_ESET_H
24 #if !defined XAPIAN_IN_XAPIAN_H && !defined XAPIAN_LIB_BUILD
25 # error Never use <xapian/eset.h> directly; include <xapian.h> instead.
82 bool empty()
const {
return size() == 0; }
107 std::string get_description()
const;
161 : eset(eset_), off_from_end(off_from_end_) { }
263 double get_weight()
const;
266 std::string get_description()
const;
273 return a.off_from_end == b.off_from_end;
287 return a.off_from_end > b.off_from_end;
Compiler attribute macros.
Iterator over a Xapian::ESet.
ESetIterator operator-(difference_type n) const
Return the iterator decremented by n positions.
ESetIterator & operator++()
Advance the iterator to the next position.
Xapian::termcount_diff difference_type
ESetIterator operator--(int)
Move the iterator to the previous position (postfix version).
Xapian::ESet::size_type off_from_end
ESetIterator & operator-=(difference_type n)
Move the iterator back by n positions.
difference_type operator-(const ESetIterator &o) const
Return the number of positions between o and this iterator.
ESetIterator operator+(difference_type n) const
Return the iterator incremented by n positions.
ESetIterator()
Create an unpositioned ESetIterator.
ESetIterator operator++(int)
Advance the iterator to the next position (postfix version).
std::random_access_iterator_tag iterator_category
ESetIterator & operator--()
Move the iterator to the previous position.
ESetIterator(const Xapian::ESet &eset_, Xapian::termcount off_from_end_)
ESetIterator & operator+=(difference_type n)
Move the iterator forwards by n positions.
Class which actually implements Xapian::ESet.
Class representing a list of search results.
Xapian::termcount size_type
Xapian::ESetIterator const_iterator
Xapian::termcount size() const
Return number of items in this ESet object.
const value_type * const_pointer
ESetIterator back() const
Return iterator pointing to the last object in this ESet.
ESet & operator=(ESet &&o)
Move assignment operator.
Xapian::ESetIterator value_type
Xapian::ESetIterator iterator
ESet & operator=(const ESet &o)
Copying is allowed.
ESetIterator end() const
Return iterator pointing to just after the last item in this ESet.
const value_type const_reference
Xapian::termcount_diff difference_type
Xapian::Internal::intrusive_ptr_nonnull< Internal > internal
friend class ESetIterator
ESetIterator operator[](Xapian::termcount i) const
Return iterator pointing to the i-th object in this ESet.
Xapian::termcount max_size() const
void swap(ESet &o)
Efficiently swap this ESet object with another.
bool empty() const
Return true if this ESet object is empty.
ESet(const ESet &o)
Copying is allowed.
ESet(ESet &&o)
Move constructor.
ESetIterator begin() const
Return iterator pointing to the first item in this ESet.
The Xapian namespace contains public interfaces for the Xapian library.
bool operator>(const ESetIterator &a, const ESetIterator &b) noexcept
Inequality test for ESetIterator objects.
XAPIAN_TERMCOUNT_BASE_TYPE termcount_diff
A signed difference between two counts of terms.
bool operator>=(const ESetIterator &a, const ESetIterator &b) noexcept
Inequality test for ESetIterator objects.
unsigned XAPIAN_TERMCOUNT_BASE_TYPE termcount
A counts of terms.
bool operator<=(const ESetIterator &a, const ESetIterator &b) noexcept
Inequality test for ESetIterator objects.
bool operator==(const ESetIterator &a, const ESetIterator &b) noexcept
Equality test for ESetIterator objects.
bool operator!=(const ESetIterator &a, const ESetIterator &b) noexcept
Inequality test for ESetIterator objects.
ESetIterator operator+(ESetIterator::difference_type n, const ESetIterator &it)
Return ESetIterator it incremented by n positions.
bool operator<(const ESetIterator &a, const ESetIterator &b) noexcept
Inequality test for ESetIterator objects.
const Query operator*(double factor, const Query &q)
Scale a Xapian::Query object using OP_SCALE_WEIGHT.
Define XAPIAN_VISIBILITY_* macros.
#define XAPIAN_VISIBILITY_DEFAULT