#include <swcdb/db/Cells/SpecsValueSerialFields.h>
Public Types | |
typedef std::unique_ptr< Field > | Ptr |
Public Member Functions | |
constexpr SWC_CAN_INLINE | Field (uint24_t a_fid) noexcept |
SWC_CAN_INLINE | Field (const uint8_t **bufp, size_t *remainp) |
virtual | ~Field () noexcept |
virtual Type | type () const noexcept=0 |
virtual size_t | encoded_length () const noexcept |
virtual void | encode (uint8_t **bufp) const =0 |
SWC_CAN_INLINE void | encode (uint8_t **bufp, Type type) const |
virtual bool | is_matching (Cell::Serial::Value::Field *vfieldp)=0 |
virtual void | print (std::ostream &out) const =0 |
Public Attributes | |
uint24_t | fid |
Definition at line 39 of file SpecsValueSerialFields.h.
typedef std::unique_ptr<Field> SWC::DB::Specs::Serial::Value::Field::Ptr |
Definition at line 40 of file SpecsValueSerialFields.h.
|
inlineconstexprnoexcept |
Definition at line 45 of file SpecsValueSerialFields.h.
|
inline |
Definition at line 48 of file SpecsValueSerialFields.h.
|
inlinevirtualnoexcept |
Definition at line 52 of file SpecsValueSerialFields.h.
|
pure virtual |
Implemented in SWC::DB::Specs::Serial::Value::Field_LIST_BYTES, SWC::DB::Specs::Serial::Value::Field_LIST_INT64, SWC::DB::Specs::Serial::Value::Field_KEY, SWC::DB::Specs::Serial::Value::Field_BYTES, SWC::DB::Specs::Serial::Value::Field_DOUBLE, and SWC::DB::Specs::Serial::Value::Field_INT64.
Referenced by SWC::DB::Specs::Serial::Value::Field_INT64::encode(), SWC::DB::Specs::Serial::Value::Field_DOUBLE::encode(), SWC::DB::Specs::Serial::Value::Field_BYTES::encode(), SWC::DB::Specs::Serial::Value::Field_KEY::encode(), SWC::DB::Specs::Serial::Value::Field_LIST_INT64::encode(), and SWC::DB::Specs::Serial::Value::Field_LIST_BYTES::encode().
|
inline |
Definition at line 63 of file SpecsValueSerialFields.h.
References SWC::Serialization::encode_i8(), SWC::Serialization::encode_vi24(), fid, and type().
|
inlinevirtualnoexcept |
Reimplemented in SWC::DB::Specs::Serial::Value::Field_LIST_BYTES, SWC::DB::Specs::Serial::Value::Field_LIST_INT64, SWC::DB::Specs::Serial::Value::Field_KEY, SWC::DB::Specs::Serial::Value::Field_BYTES, SWC::DB::Specs::Serial::Value::Field_DOUBLE, and SWC::DB::Specs::Serial::Value::Field_INT64.
Definition at line 56 of file SpecsValueSerialFields.h.
References SWC::Serialization::encoded_length_vi24(), and fid.
Referenced by SWC::DB::Specs::Serial::Value::Field_INT64::encoded_length(), SWC::DB::Specs::Serial::Value::Field_DOUBLE::encoded_length(), SWC::DB::Specs::Serial::Value::Field_BYTES::encoded_length(), SWC::DB::Specs::Serial::Value::Field_KEY::encoded_length(), SWC::DB::Specs::Serial::Value::Field_LIST_INT64::encoded_length(), and SWC::DB::Specs::Serial::Value::Field_LIST_BYTES::encoded_length().
|
pure virtual |
|
pure virtual |
|
pure virtualnoexcept |
Implemented in SWC::DB::Specs::Serial::Value::Field_LIST_BYTES, SWC::DB::Specs::Serial::Value::Field_LIST_INT64, SWC::DB::Specs::Serial::Value::Field_KEY, SWC::DB::Specs::Serial::Value::Field_BYTES, SWC::DB::Specs::Serial::Value::Field_DOUBLE, and SWC::DB::Specs::Serial::Value::Field_INT64.
Referenced by encode().
uint24_t SWC::DB::Specs::Serial::Value::Field::fid |
Definition at line 42 of file SpecsValueSerialFields.h.
Referenced by encode(), encoded_length(), SWC::DB::Specs::Serial::Value::Field_LIST_INT64::make(), SWC::DB::Specs::Serial::Value::Field_LIST_BYTES::make(), SWC::DB::Specs::Serial::Value::Field_DOUBLE::make(), SWC::DB::Specs::Serial::Value::Field_BYTES::make(), SWC::DB::Specs::Serial::Value::Field_INT64::make(), SWC::DB::Specs::Serial::Value::Field_KEY::make(), SWC::DB::Specs::Serial::Value::Field_INT64::print(), SWC::DB::Specs::Serial::Value::Field_DOUBLE::print(), SWC::DB::Specs::Serial::Value::Field_BYTES::print(), SWC::DB::Specs::Serial::Value::Field_KEY::print(), SWC::DB::Specs::Serial::Value::Field_LIST_INT64::print(), and SWC::DB::Specs::Serial::Value::Field_LIST_BYTES::print().