43 bool QualifiedRangeSpec::is_root()
const {
44 bool start_null = (range.start_row == 0) || (strlen(range.start_row)==0);
45 return (table.is_metadata() && start_null);
49 if (!strcmp(table.id, other.
table.
id))
50 return (range < other.
range);
52 return strcmp(table.id, other.
table.
id) < 0;
56 return (table == other.
table && range == other.
range);
60 uint8_t QualifiedRangeSpec::encoding_version()
const {
64 size_t QualifiedRangeSpec::encoded_length_internal()
const {
65 return table.encoded_length() + range.encoded_length();
84 void QualifiedRangeSpec::encode_internal(uint8_t **bufp)
const {
89 void QualifiedRangeSpec::decode_internal(uint8_t version,
const uint8_t **bufp,
91 HT_TRY(
"decoding qualified range spec ",
92 table.decode(bufp, remainp);
93 range.decode(bufp, remainp));
97 if (table == other.
table)
98 return (range < other.
range);
100 return (table < other.
table);
103 void QualifiedRangeSpecManaged::decode_internal(uint8_t version,
const uint8_t **bufp,
105 QualifiedRangeSpec::decode_internal(version, bufp, remainp);
111 os << qualified_range.
table << qualified_range.
range;
Qualified (with table identifier) range specification, with storage.
Program options handling.
TableIdentifierManaged m_table
Declarations for QualifiedRangeSpec and QualifiedRangeSpecManaged.
Logging routines and macros.
Compatibility Macros for C/C++.
std::ostream & operator<<(std::ostream &os, const crontab_entry &entry)
Helper function to write crontab_entry to an ostream.
Functions to serialize/deserialize primitives to/from a memory buffer.
bool operator==(const directory_entry< _Key, _Tp > &lhs, const directory_entry< _Key, _Tp > &rhs)
bool operator<(const directory_entry< _Key, _Tp > &lhs, const directory_entry< _Key, _Tp > &rhs)
Qualified (with table identifier) range specification.
#define HT_TRY(_s_, _code_)
String extensions and helpers: sets, maps, append operators etc.