22 #ifndef XAPIAN_INCLUDED_BYTE_LENGTH_STRINGS_H
23 #define XAPIAN_INCLUDED_BYTE_LENGTH_STRINGS_H
33 #define MAGIC_XOR_VALUE 96
36 const unsigned char *
p;
40 :
p(p_),
left(left_) { }
44 :
p(reinterpret_cast<const unsigned char *>(s.data())),
49 return std::string(
reinterpret_cast<const char *
>(
p + 1), len);
53 const unsigned char * old_p =
p;
54 size_t old_left =
left;
std::string operator*() const
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.