21 #ifndef XAPIAN_INCLUDED_BYTE_LENGTH_STRINGS_H
22 #define XAPIAN_INCLUDED_BYTE_LENGTH_STRINGS_H
32 #define MAGIC_XOR_VALUE 96
35 const unsigned char *
p;
39 :
p(p_),
left(left_) { }
43 :
p(reinterpret_cast<const unsigned char *>(s.data())),
53 return std::string_view(
reinterpret_cast<const char *
>(
p + 1), len);
57 const unsigned char * old_p =
p;
58 size_t old_left =
left;
std::string_view operator*() const
Get the current entry.
ByteLengthPrefixedStringItor operator++(int)
ByteLengthPrefixedStringItor(const std::string &s)
ByteLengthPrefixedStringItor & operator++()
ByteLengthPrefixedStringItor(const unsigned char *p_, size_t left_)
DatabaseCorruptError indicates database corruption was detected.
Hierarchy of classes which Xapian can throw as exceptions.
bool operator()(const ByteLengthPrefixedStringItor *a, const ByteLengthPrefixedStringItor *b) const
Return true if and only if a's string is strictly greater than b's.