22 #ifndef Hypertable_Lib_CellInterval_h
23 #define Hypertable_Lib_CellInterval_h
42 bool start_inclusive,
const char *end_row,
43 const char *end_column,
bool end_inclusive)
44 : start_row(start_row), start_column(start_column),
45 start_inclusive(start_inclusive), end_row(end_row),
46 end_column(end_column), end_inclusive(end_inclusive) { }
48 decode(bufp, remainp);
55 const string render_hql()
const;
57 const char *start_row {};
58 const char *start_column {};
59 bool start_inclusive {
true};
60 const char *end_row {};
61 const char *end_column {};
62 bool end_inclusive {
true};
68 uint8_t encoding_version()
const override;
73 size_t encoded_length_internal()
const override;
77 void encode_internal(uint8_t **bufp)
const override;
85 void decode_internal(uint8_t version,
const uint8_t **bufp,
86 size_t *remainp)
override;
94 #endif // Hypertable_Lib_CellInterval_h
ostream & operator<<(ostream &os, const CellInterval &ci)
CellInterval(const char *start_row, const char *start_column, bool start_inclusive, const char *end_row, const char *end_column, bool end_inclusive)
Declarations for Serializable.
Mixin class that provides a standard serialization interface.
Represents a cell interval.
CellInterval(const uint8_t **bufp, size_t *remainp)