SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
RangeQuerySelect.cc
Go to the documentation of this file.
1 /*
2  * SWC-DB© Copyright since 2019 Alex Kashirin <kashirin.alex@gmail.com>
3  * License details at <https://github.com/kashirin-alex/swc-db/#license>
4  */
5 
6 
8 
9 
10 namespace SWC { namespace Comm { namespace Protocol {
11 namespace Rgr { namespace Params {
12 
13 
14 
15 void RangeQuerySelectReq::print(std::ostream& out) const {
16  out << "RangeQuerySelectReq(cid=" << cid << " rid=" << rid;
17  interval.print(out << ' ');
18  out << ')';
19 }
20 
25 }
26 
27 void RangeQuerySelectReq::internal_encode(uint8_t** bufp) const {
30  interval.encode(bufp);
31 }
32 
33 void RangeQuerySelectReq::internal_decode(const uint8_t** bufp,
34  size_t* remainp) {
35  cid = Serialization::decode_vi64(bufp, remainp);
36  rid = Serialization::decode_vi64(bufp, remainp);
37  interval.decode(bufp, remainp, true);
38 }
39 
40 
41 
42 
43 
44 void RangeQuerySelectReqRef::print(std::ostream& out) const {
45  out << "RangeQuerySelectReq(cid=" << cid << " rid=" << rid;
46  interval.print(out << ' ');
47  out << ')';
48 }
49 
54 }
55 
56 void RangeQuerySelectReqRef::internal_encode(uint8_t** bufp) const {
59  interval.encode(bufp);
60 }
61 
62 
63 
64 
65 
67  int a_err, const uint8_t* ptr, size_t remain,
68  StaticBuffer& a_data) noexcept
69  : err(a_err), reached_limit(false), offset(0), data(a_data) {
70  if(!err) try {
71  decode(&ptr, &remain);
72  } catch(...) {
74  err = e.code();
76  }
77 }
78 
79 void RangeQuerySelectRsp::print(std::ostream& out) const {
80  Error::print(out << "RangeQuerySelectRsp(", err);
81  out << " reached_limit=" << reached_limit
82  << " offset=" << offset
83  << " data.size=" << data.size
84  << ')';
85 }
86 
89  + 1
91 }
92 
93 void RangeQuerySelectRsp::internal_encode(uint8_t** bufp) const {
97 }
98 
99 void RangeQuerySelectRsp::internal_decode(const uint8_t** bufp,
100  size_t* remainp) {
101  err = Serialization::decode_vi32(bufp, remainp);
102  reached_limit = Serialization::decode_bool(bufp, remainp);
103  offset = Serialization::decode_vi64(bufp, remainp);
104 }
105 
106 
107 }}}}}
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::err
int32_t err
Definition: RangeQuerySelect.h:105
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::internal_encoded_length
size_t SWC_PURE_FUNC internal_encoded_length() const override
Definition: RangeQuerySelect.cc:87
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::interval
const DB::Specs::Interval & interval
Definition: RangeQuerySelect.h:66
SWC::Error::Exception::code
constexpr SWC_CAN_INLINE int code() const noexcept
Definition: Exception.h:51
SWC_LOG_OSTREAM
#define SWC_LOG_OSTREAM
Definition: Logger.h:44
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::internal_decode
void internal_decode(const uint8_t **bufp, size_t *remainp) override
Definition: RangeQuerySelect.cc:33
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::RangeQuerySelectRsp
SWC_CAN_INLINE RangeQuerySelectRsp(int a_err=Error::OK, bool a_reached_limit=false, uint64_t a_offset=0) noexcept
Definition: RangeQuerySelect.h:85
SWC_LOG_OUT
#define SWC_LOG_OUT(pr, _code_)
Definition: Logger.h:178
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::internal_encoded_length
size_t SWC_PURE_FUNC internal_encoded_length() const override
Definition: RangeQuerySelect.cc:50
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::offset
uint64_t offset
Definition: RangeQuerySelect.h:107
data
T data
Definition: BitFieldInt.h:1
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::interval
DB::Specs::Interval interval
Definition: RangeQuerySelect.h:37
SWC::Serialization::encoded_length_vi32
constexpr SWC_CAN_INLINE uint8_t encoded_length_vi32(uint32_t val) noexcept
Definition: Serialization.h:234
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::print
void print(std::ostream &out) const
Definition: RangeQuerySelect.cc:44
SWC::DB::Specs::Interval::encoded_length
size_t SWC_PURE_FUNC encoded_length() const noexcept
Definition: SpecsInterval.cc:154
RangeQuerySelect.h
SWC::DB::Specs::Interval::print
void print(std::ostream &out) const
Definition: SpecsInterval.cc:322
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::internal_encode
void internal_encode(uint8_t **bufp) const override
Definition: RangeQuerySelect.cc:56
SWC::DB::Specs::Interval::encode
void encode(uint8_t **bufp) const
Definition: SpecsInterval.cc:166
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::internal_encoded_length
size_t SWC_PURE_FUNC internal_encoded_length() const override
Definition: RangeQuerySelect.cc:21
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::reached_limit
bool reached_limit
Definition: RangeQuerySelect.h:106
SWC::Serialization::encode_bool
constexpr SWC_CAN_INLINE void encode_bool(uint8_t **bufp, bool bval) noexcept
Definition: Serialization.h:102
decode
void decode(const uint8_t **bufp, size_t *remainp)
Definition: HeaderBufferInfo.h:33
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::print
void print(std::ostream &out) const
Definition: RangeQuerySelect.cc:15
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::internal_encode
void internal_encode(uint8_t **bufp) const override
Definition: RangeQuerySelect.cc:27
SWC_CURRENT_EXCEPTION
#define SWC_CURRENT_EXCEPTION(_msg_)
Definition: Exception.h:119
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::data
StaticBuffer data
Definition: RangeQuerySelect.h:108
SWC
The SWC-DB C++ namespace 'SWC'.
Definition: main.cc:12
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::rid
rid_t rid
Definition: RangeQuerySelect.h:36
SWC::Core::Buffer
Definition: Buffer.h:18
SWC::Core::Buffer::size
size_t size
Definition: Buffer.h:130
SWC::Serialization::decode_bool
constexpr SWC_CAN_INLINE bool decode_bool(const uint8_t **bufp, size_t *remainp)
Definition: Serialization.h:107
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReq::cid
cid_t cid
Definition: RangeQuerySelect.h:35
SWC::DB::Specs::Interval::decode
void decode(const uint8_t **bufp, size_t *remainp, bool owner)
Definition: SpecsInterval.cc:192
SWC::Serialization::encoded_length_vi64
constexpr SWC_CAN_INLINE uint8_t encoded_length_vi64(uint64_t val) noexcept
Definition: Serialization.h:272
SWC::LOG_ERROR
@ LOG_ERROR
Definition: Logger.h:32
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::rid
rid_t rid
Definition: RangeQuerySelect.h:65
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::internal_encode
void internal_encode(uint8_t **bufp) const override
Definition: RangeQuerySelect.cc:93
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::print
void print(std::ostream &out) const
Definition: RangeQuerySelect.cc:79
SWC::Serialization::decode_vi64
constexpr SWC_CAN_INLINE uint64_t decode_vi64(const uint8_t **bufp, size_t *remainp)
Definition: Serialization.h:302
SWC::Serialization::encode_vi32
constexpr SWC_CAN_INLINE void encode_vi32(uint8_t **bufp, uint32_t val)
Definition: Serialization.h:243
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectRsp::internal_decode
void internal_decode(const uint8_t **bufp, size_t *remainp) override
Definition: RangeQuerySelect.cc:99
SWC::Serialization::encode_vi64
constexpr SWC_CAN_INLINE void encode_vi64(uint8_t **bufp, uint64_t val)
Definition: Serialization.h:286
SWC::Error::print
void print(std::ostream &out, int err)
Definition: Error.cc:191
SWC::Error::Exception
Definition: Exception.h:21
SWC::Serialization::decode_vi32
constexpr SWC_CAN_INLINE uint32_t decode_vi32(const uint8_t **bufp, size_t *remainp)
Definition: Serialization.h:254
SWC::Comm::Protocol::Rgr::Params::RangeQuerySelectReqRef::cid
cid_t cid
Definition: RangeQuerySelect.h:64