SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
SWC::DB::Specs::Serial::Value::Field Struct Referenceabstract

#include <swcdb/db/Cells/SpecsValueSerialFields.h>

+ Inheritance diagram for SWC::DB::Specs::Serial::Value::Field:

Public Types

typedef std::unique_ptr< FieldPtr
 

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
 

Detailed Description

Definition at line 39 of file SpecsValueSerialFields.h.

Member Typedef Documentation

◆ Ptr

Definition at line 40 of file SpecsValueSerialFields.h.

Constructor & Destructor Documentation

◆ Field() [1/2]

constexpr SWC_CAN_INLINE SWC::DB::Specs::Serial::Value::Field::Field ( uint24_t  a_fid)
inlineconstexprnoexcept

Definition at line 45 of file SpecsValueSerialFields.h.

◆ Field() [2/2]

SWC_CAN_INLINE SWC::DB::Specs::Serial::Value::Field::Field ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Definition at line 48 of file SpecsValueSerialFields.h.

◆ ~Field()

virtual SWC::DB::Specs::Serial::Value::Field::~Field ( )
inlinevirtualnoexcept

Definition at line 52 of file SpecsValueSerialFields.h.

Member Function Documentation

◆ encode() [1/2]

◆ encode() [2/2]

SWC_CAN_INLINE void SWC::DB::Specs::Serial::Value::Field::encode ( uint8_t **  bufp,
Type  type 
) const
inline

Definition at line 63 of file SpecsValueSerialFields.h.

References SWC::Serialization::encode_i8(), SWC::Serialization::encode_vi24(), fid, and type().

+ Here is the call graph for this function:

◆ encoded_length()

virtual size_t SWC::DB::Specs::Serial::Value::Field::encoded_length ( ) const
inlinevirtualnoexcept

◆ is_matching()

◆ print()

◆ type()

virtual Type SWC::DB::Specs::Serial::Value::Field::type ( ) const
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().

+ Here is the caller graph for this function:

Member Data Documentation

◆ fid


The documentation for this struct was generated from the following file: