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::Flags Class Reference

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

Public Member Functions

constexpr SWC_CAN_INLINE Flags () noexcept
 
SWC_CAN_INLINE Flags (const uint8_t **bufp, size_t *remainp)
 
 Flags (Flags &&) noexcept=default
 
 Flags (const Flags &) noexcept=default
 
Flagsoperator= (Flags &&) noexcept=default
 
Flagsoperator= (const Flags &) noexcept=default
 
constexpr SWC_CAN_INLINE void copy (const Flags &other) noexcept
 
 ~Flags () noexcept
 
constexpr SWC_CAN_INLINE bool is_only_keys () const noexcept
 
constexpr SWC_CAN_INLINE bool is_only_deletes () const noexcept
 
constexpr SWC_CAN_INLINE void set_only_keys () noexcept
 
constexpr SWC_CAN_INLINE void set_only_deletes () noexcept
 
constexpr SWC_CAN_INLINE void clear_only_deletes () noexcept
 
constexpr SWC_CAN_INLINE bool equal (const Flags &other) const noexcept
 
constexpr SWC_CAN_INLINE size_t encoded_length () const noexcept
 
SWC_CAN_INLINE void encode (uint8_t **bufp) const
 
SWC_CAN_INLINE void decode (const uint8_t **bufp, size_t *remainp)
 
SWC_CAN_INLINE std::string to_string () const
 
void print (std::ostream &out) const
 
void display (std::ostream &out) const
 

Public Attributes

uint64_t limit
 
uint64_t offset
 
uint32_t max_versions
 
uint32_t max_buffer
 
uint8_t options
 
bool was_set
 

Static Public Attributes

constexpr static const uint8_t NONE = 0x00
 
constexpr static const uint8_t LIMIT_BY_KEYS = 0x01
 
constexpr static const uint8_t OFFSET_BY_KEYS = 0x04
 
constexpr static const uint8_t ONLY_KEYS = 0x08
 
constexpr static const uint8_t ONLY_DELETES = 0x10
 
constexpr static const uint8_t MASK_ONLY_DELETES = 0xff - ONLY_DELETES
 

Detailed Description

Definition at line 18 of file SpecsFlags.h.

Constructor & Destructor Documentation

◆ Flags() [1/4]

constexpr SWC_CAN_INLINE SWC::DB::Specs::Flags::Flags ( )
inlineexplicitconstexprnoexcept

Definition at line 31 of file SpecsFlags.h.

◆ Flags() [2/4]

SWC_CAN_INLINE SWC::DB::Specs::Flags::Flags ( const uint8_t **  bufp,
size_t *  remainp 
)
inlineexplicit

Definition at line 38 of file SpecsFlags.h.

◆ Flags() [3/4]

SWC::DB::Specs::Flags::Flags ( Flags &&  )
defaultnoexcept

◆ Flags() [4/4]

SWC::DB::Specs::Flags::Flags ( const Flags )
defaultnoexcept

◆ ~Flags()

SWC::DB::Specs::Flags::~Flags ( )
inlinenoexcept

Definition at line 62 of file SpecsFlags.h.

Member Function Documentation

◆ clear_only_deletes()

constexpr SWC_CAN_INLINE void SWC::DB::Specs::Flags::clear_only_deletes ( )
inlineconstexprnoexcept

Definition at line 85 of file SpecsFlags.h.

References MASK_ONLY_DELETES, and options.

Referenced by SWC::DB::Specs::Interval::decode(), and SWC::DB::Specs::Interval::Interval().

+ Here is the caller graph for this function:

◆ copy()

constexpr SWC_CAN_INLINE void SWC::DB::Specs::Flags::copy ( const Flags other)
inlineconstexprnoexcept

Definition at line 53 of file SpecsFlags.h.

References limit, max_buffer, max_versions, offset, options, and was_set.

Referenced by SWC::DB::Specs::Interval::copy(), and SWC::DB::Specs::Scan::operator=().

+ Here is the caller graph for this function:

◆ decode()

SWC_CAN_INLINE void SWC::DB::Specs::Flags::decode ( const uint8_t **  bufp,
size_t *  remainp 
)
inline

Definition at line 119 of file SpecsFlags.h.

References SWC::Serialization::decode_i8(), SWC::Serialization::decode_vi32(), SWC::Serialization::decode_vi64(), limit, max_buffer, max_versions, offset, and options.

Referenced by SWC::DB::Specs::Scan::decode(), and SWC::DB::Specs::Interval::decode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ display()

void SWC::DB::Specs::Flags::display ( std::ostream &  out) const

Definition at line 20 of file SpecsFlags.cc.

References is_only_deletes(), is_only_keys(), limit, max_buffer, max_versions, offset, and was_set.

Referenced by SWC::DB::Specs::Interval::display(), SWC::DB::Specs::Scan::display(), and print().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ encode()

SWC_CAN_INLINE void SWC::DB::Specs::Flags::encode ( uint8_t **  bufp) const
inline

Definition at line 110 of file SpecsFlags.h.

References SWC::Serialization::encode_i8(), SWC::Serialization::encode_vi32(), SWC::Serialization::encode_vi64(), limit, max_buffer, max_versions, offset, and options.

Referenced by SWC::DB::Specs::Interval::encode(), and SWC::DB::Specs::Scan::encode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ encoded_length()

constexpr SWC_CAN_INLINE size_t SWC::DB::Specs::Flags::encoded_length ( ) const
inlineconstexprnoexcept

Definition at line 101 of file SpecsFlags.h.

References SWC::Serialization::encoded_length_vi32(), SWC::Serialization::encoded_length_vi64(), limit, max_buffer, max_versions, and offset.

Referenced by SWC::DB::Specs::Interval::encoded_length(), and SWC::DB::Specs::Scan::encoded_length().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equal()

constexpr SWC_CAN_INLINE bool SWC::DB::Specs::Flags::equal ( const Flags other) const
inlineconstexprnoexcept

Definition at line 90 of file SpecsFlags.h.

References limit, max_buffer, max_versions, offset, options, and was_set.

◆ is_only_deletes()

constexpr SWC_CAN_INLINE bool SWC::DB::Specs::Flags::is_only_deletes ( ) const
inlineconstexprnoexcept

Definition at line 70 of file SpecsFlags.h.

References ONLY_DELETES, and options.

Referenced by display(), SWC::DB::Cells::Mutable::scan_test_use(), SWC::DB::Cells::Mutable::scan_version_multi(), and SWC::DB::Cells::Mutable::scan_version_single().

+ Here is the caller graph for this function:

◆ is_only_keys()

constexpr SWC_CAN_INLINE bool SWC::DB::Specs::Flags::is_only_keys ( ) const
inlineconstexprnoexcept

Definition at line 65 of file SpecsFlags.h.

References ONLY_KEYS, and options.

Referenced by display(), and SWC::Ranger::Callback::RangeQuerySelect::response().

+ Here is the caller graph for this function:

◆ operator=() [1/2]

Flags& SWC::DB::Specs::Flags::operator= ( const Flags )
defaultnoexcept

◆ operator=() [2/2]

Flags& SWC::DB::Specs::Flags::operator= ( Flags &&  )
defaultnoexcept

◆ print()

void SWC::DB::Specs::Flags::print ( std::ostream &  out) const

Definition at line 15 of file SpecsFlags.cc.

References display().

Referenced by SWC::DB::Specs::Interval::print(), SWC::DB::Specs::Scan::print(), and to_string().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_only_deletes()

constexpr SWC_CAN_INLINE void SWC::DB::Specs::Flags::set_only_deletes ( )
inlineconstexprnoexcept

Definition at line 80 of file SpecsFlags.h.

References ONLY_DELETES, and options.

◆ set_only_keys()

constexpr SWC_CAN_INLINE void SWC::DB::Specs::Flags::set_only_keys ( )
inlineconstexprnoexcept

Definition at line 75 of file SpecsFlags.h.

References ONLY_KEYS, and options.

Referenced by SWC::DB::RgrData::remove().

+ Here is the caller graph for this function:

◆ to_string()

SWC_CAN_INLINE std::string SWC::DB::Specs::Flags::to_string ( ) const
inline

Definition at line 128 of file SpecsFlags.h.

References print().

+ Here is the call graph for this function:

Member Data Documentation

◆ limit

◆ LIMIT_BY_KEYS

constexpr static const uint8_t SWC::DB::Specs::Flags::LIMIT_BY_KEYS = 0x01
staticconstexpr

Definition at line 22 of file SpecsFlags.h.

◆ MASK_ONLY_DELETES

constexpr static const uint8_t SWC::DB::Specs::Flags::MASK_ONLY_DELETES = 0xff - ONLY_DELETES
staticconstexpr

Definition at line 27 of file SpecsFlags.h.

Referenced by clear_only_deletes().

◆ max_buffer

◆ max_versions

◆ NONE

constexpr static const uint8_t SWC::DB::Specs::Flags::NONE = 0x00
staticconstexpr

Definition at line 21 of file SpecsFlags.h.

◆ offset

◆ OFFSET_BY_KEYS

constexpr static const uint8_t SWC::DB::Specs::Flags::OFFSET_BY_KEYS = 0x04
staticconstexpr

Definition at line 23 of file SpecsFlags.h.

◆ ONLY_DELETES

constexpr static const uint8_t SWC::DB::Specs::Flags::ONLY_DELETES = 0x10
staticconstexpr

Definition at line 25 of file SpecsFlags.h.

Referenced by is_only_deletes(), and set_only_deletes().

◆ ONLY_KEYS

constexpr static const uint8_t SWC::DB::Specs::Flags::ONLY_KEYS = 0x08
staticconstexpr

Definition at line 24 of file SpecsFlags.h.

Referenced by is_only_keys(), and set_only_keys().

◆ options

uint8_t SWC::DB::Specs::Flags::options

◆ was_set

bool SWC::DB::Specs::Flags::was_set

Definition at line 146 of file SpecsFlags.h.

Referenced by copy(), display(), equal(), and SWC::client::SQL::QuerySelect::parse_select().


The documentation for this class was generated from the following files: