33 RSet::RSet(
const RSet&) =
default;
36 RSet::operator=(
const RSet&) =
default;
38 RSet::RSet(RSet &&) =
default;
41 RSet::operator=(RSet &&) =
default;
45 RSet::RSet(
Internal* internal_) : internal(internal_) {}
52 return internal ? clamp_cast<Xapian::doccount>(
internal->docs.size()) : 0;
62 internal->
docs.insert(did);
71 internal->docs.erase(did);
77 return internal &&
internal->docs.find(did) !=
internal->docs.end();
83 string desc =
"RSet(";
84 if (!
internal ||
internal->docs.empty()) {
Cast a value to a type, clamping out of range values.
InvalidArgumentError indicates an invalid parameter value was passed to the API.
std::set< Xapian::docid > docs
Xapian::Internal::intrusive_ptr< Internal > internal
void add_document(Xapian::docid did)
Mark a document as relevant.
void remove_document(Xapian::docid did)
Unmark a document as relevant.
Xapian::doccount size() const
Return number of documents in this RSet object.
bool contains(Xapian::docid did) const
Check if a document is marked as relevant.
std::string get_description() const
Return a string describing this object.
string str(int value)
Convert int to std::string.
The Xapian namespace contains public interfaces for the Xapian library.
unsigned XAPIAN_DOCID_BASE_TYPE doccount
A count of documents.
unsigned XAPIAN_DOCID_BASE_TYPE docid
A unique identifier for a document.
Set of documents judged as relevant.
Set of documents judged as relevant.
Convert types to std::string.