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

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

+ Inheritance diagram for SWC::DB::Specs::Values:
+ Collaboration diagram for SWC::DB::Specs::Values:

Public Types

typedef Core::Vector< ValueVec
 
- Public Types inherited from SWC::Core::Vector< Value >
using value_type = Value
 
using size_type = uint32_t
 
typedef value_typepointer
 
typedef const value_typeconst_pointer
 
typedef value_typeiterator
 
typedef const value_typeconst_iterator
 
typedef value_typereference
 
typedef const value_typeconst_reference
 

Public Member Functions

SWC_CAN_INLINE Values (Types::Column a_col_type=Types::Column::UNKNOWN) noexcept
 
SWC_CAN_INLINE Values (const uint8_t **bufp, size_t *remainp, bool owner)
 
SWC_CAN_INLINE Values (Values &&other) noexcept
 
 ~Values () noexcept
 
SWC_CAN_INLINE Valuesoperator= (const Values &other)
 
SWC_CAN_INLINE Valuesoperator= (Values &&other) noexcept
 
SWC_CAN_INLINE void move (Values &other) noexcept
 
 Values (const Values &other)
 
void copy (const Values &other)
 
Valueadd (Condition::Comp comp=Condition::EQ)
 
Valueadd (Value &&other)
 
size_t size_of_internal () const noexcept
 
bool SWC_PURE_FUNC equal (const Values &other) const noexcept
 
bool is_matching (const Cells::Cell &cell) const
 
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, bool owner)
 
void print (std::ostream &out) const
 
void display (std::ostream &out, bool pretty, const std::string &offset) const
 
- Public Member Functions inherited from SWC::Core::Vector< Value >
constexpr SWC_CAN_INLINE Vector () noexcept
 
SWC_CAN_INLINE Vector (size_type sz, ArgsT &&... args)
 
constexpr SWC_CAN_INLINE Vector (Vector &&other) noexcept
 
SWC_CAN_INLINE Vector (const Vector &other)
 
SWC_CAN_INLINE Vector (const_iterator _b, const_iterator _e)
 
SWC_CAN_INLINE Vector (std::initializer_list< value_type > &&l)
 
SWC_CAN_INLINE ~Vector () noexcept(_NoExceptDestructor)
 
SWC_CAN_INLINE void clear () noexcept(_NoExceptDestructor)
 
SWC_CAN_INLINE void free () noexcept
 
SWC_CAN_INLINE Vectoroperator= (Vector &&other) noexcept
 
SWC_CAN_INLINE Vectoroperator= (const Vector &other)
 
SWC_CAN_INLINE void swap (Vector &other) noexcept
 
constexpr SWC_CAN_INLINE bool empty () const noexcept
 
constexpr SWC_CAN_INLINE bool operator== (const Vector &other) const noexcept
 
constexpr SWC_CAN_INLINE bool operator!= (const Vector &other) const noexcept
 
constexpr SWC_CAN_INLINE size_type size () const noexcept
 
constexpr SWC_CAN_INLINE size_type capacity () const noexcept
 
constexpr SWC_CAN_INLINE pointer data () noexcept
 
constexpr SWC_CAN_INLINE const_pointer data () const noexcept
 
constexpr SWC_CAN_INLINE iterator begin () noexcept
 
constexpr SWC_CAN_INLINE const_iterator begin () const noexcept
 
constexpr SWC_CAN_INLINE const_iterator cbegin () const noexcept
 
constexpr SWC_CAN_INLINE iterator end () noexcept
 
constexpr SWC_CAN_INLINE const_iterator end () const noexcept
 
constexpr SWC_CAN_INLINE const_iterator cend () const noexcept
 
constexpr SWC_CAN_INLINE reference front () noexcept
 
constexpr SWC_CAN_INLINE const_reference front () const noexcept
 
constexpr SWC_CAN_INLINE reference back () noexcept
 
constexpr SWC_CAN_INLINE const_reference back () const noexcept
 
constexpr SWC_CAN_INLINE reference operator[] (size_type pos) noexcept
 
constexpr SWC_CAN_INLINE const_reference operator[] (size_type pos) const noexcept
 
SWC_CAN_INLINE void shrink_to_fit (size_type sz=0)
 
SWC_CAN_INLINE void reserve (size_type cap)
 
SWC_CAN_INLINE void reserve ()
 
SWC_CAN_INLINE void resize (size_type sz, ArgsT &&... args)
 
SWC_CAN_INLINE void push_back (ArgsT &&... args)
 
SWC_CAN_INLINE void push_back_unsafe (ArgsT &&... args) noexcept(std::is_nothrow_constructible_v< value_type, ArgsT... >)
 
SWC_CAN_INLINE reference emplace_back (ArgsT &&... args)
 
SWC_CAN_INLINE reference emplace_back_unsafe (ArgsT &&... args) noexcept(std::is_nothrow_constructible_v< value_type, ArgsT... >)
 
SWC_CAN_INLINE iterator insert (size_type offset, ArgsT &&... args)
 
SWC_CAN_INLINE iterator insert (const_iterator it, ArgsT &&... args)
 
SWC_CAN_INLINE iterator insert (size_type offset, const_iterator first, const_iterator last)
 
SWC_CAN_INLINE iterator insert (const_iterator it, const_iterator first, const_iterator last)
 
SWC_CAN_INLINE reference emplace (const_iterator it, ArgsT &&... args)
 
SWC_CAN_INLINE iterator insert_unsafe (const_iterator it, ArgsT &&... args) noexcept(_NoExceptMove &&_NoExceptDestructor &&std::is_nothrow_constructible_v< value_type, ArgsT... >)
 
SWC_CAN_INLINE void assign (IteratorT first, IteratorT last)
 
SWC_CAN_INLINE iterator erase (size_type offset) noexcept(_NoExceptMoveAssign &&_NoExceptDestructor)
 
SWC_CAN_INLINE iterator erase (const_iterator it) noexcept(_NoExceptMoveAssign &&_NoExceptDestructor)
 
SWC_CAN_INLINE iterator erase (const_iterator first, const_iterator last) noexcept(_NoExceptMoveAssign &&_NoExceptDestructor)
 
SWC_CAN_INLINE void pop_back () noexcept(_NoExceptDestructor)
 

Public Attributes

Types::Column col_type
 

Additional Inherited Members

- Static Public Member Functions inherited from SWC::Core::Vector< Value >
constexpr static SWC_CAN_INLINE size_type max_size () noexcept
 

Detailed Description

Definition at line 17 of file SpecsValues.h.

Member Typedef Documentation

◆ Vec

Definition at line 20 of file SpecsValues.h.

Constructor & Destructor Documentation

◆ Values() [1/4]

SWC_CAN_INLINE SWC::DB::Specs::Values::Values ( Types::Column  a_col_type = Types::Column::UNKNOWN)
inlinenoexcept

Definition at line 29 of file SpecsValues.h.

◆ Values() [2/4]

SWC_CAN_INLINE SWC::DB::Specs::Values::Values ( const uint8_t **  bufp,
size_t *  remainp,
bool  owner 
)
inline

Definition at line 34 of file SpecsValues.h.

References decode().

+ Here is the call graph for this function:

◆ Values() [3/4]

SWC_CAN_INLINE SWC::DB::Specs::Values::Values ( Values &&  other)
inlinenoexcept

Definition at line 40 of file SpecsValues.h.

◆ ~Values()

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

Definition at line 44 of file SpecsValues.h.

◆ Values() [4/4]

SWC::DB::Specs::Values::Values ( const Values other)

Definition at line 15 of file SpecsValues.cc.

Member Function Documentation

◆ add() [1/2]

Value & SWC::DB::Specs::Values::add ( Condition::Comp  comp = Condition::EQ)

Definition at line 24 of file SpecsValues.cc.

References SWC::Core::Vector< Value >::emplace_back().

Referenced by SWC::Ranger::Query::Select::CheckMeta::CheckMeta(), SWC::client::SQL::QuerySelect::read_cells_interval(), and SWC::Thrift::Converter::set().

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

◆ add() [2/2]

Value & SWC::DB::Specs::Values::add ( Value &&  other)

Definition at line 28 of file SpecsValues.cc.

References SWC::Core::Vector< Value >::emplace_back().

+ Here is the call graph for this function:

◆ copy()

void SWC::DB::Specs::Values::copy ( const Values other)

Definition at line 19 of file SpecsValues.cc.

References col_type, and SWC::Core::Vector< Value >::operator=().

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

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

◆ decode()

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

Definition at line 106 of file SpecsValues.h.

References SWC::Core::Vector< Value >::clear(), SWC::Serialization::decode_vi64(), SWC::Core::Vector< Value >::emplace_back(), and SWC::Core::Vector< Value >::reserve().

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

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

◆ display()

void SWC::DB::Specs::Values::display ( std::ostream &  out,
bool  pretty,
const std::string &  offset 
) const

Definition at line 55 of file SpecsValues.cc.

References col_type.

Referenced by SWC::DB::Specs::Interval::display().

+ Here is the caller graph for this function:

◆ encode()

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

Definition at line 92 of file SpecsValues.h.

References SWC::Serialization::encode_vi64(), and SWC::Condition::NONE.

Referenced by SWC::DB::Specs::Interval::encode().

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

◆ encoded_length()

SWC_CAN_INLINE size_t SWC::DB::Specs::Values::encoded_length ( ) const
inlinenoexcept

Definition at line 79 of file SpecsValues.h.

References SWC::Serialization::encoded_length_vi64(), and SWC::Condition::NONE.

Referenced by SWC::DB::Specs::Interval::encoded_length().

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

◆ equal()

bool SWC::DB::Specs::Values::equal ( const Values other) const
noexcept

Definition at line 32 of file SpecsValues.cc.

References size.

◆ is_matching()

SWC_CAN_INLINE bool SWC::DB::Specs::Values::is_matching ( const Cells::Cell cell) const

Definition at line 133 of file SpecsValues.h.

References col_type, SWC::Core::Vector< Value >::empty(), and SWC::DB::Types::SERIAL.

Referenced by SWC::DB::Specs::Interval::is_matching().

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

◆ move()

SWC_CAN_INLINE void SWC::DB::Specs::Values::move ( Values other)
inlinenoexcept

Definition at line 59 of file SpecsValues.h.

References col_type, and SWC::Core::Vector< Value >::operator=().

Referenced by operator=().

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

◆ operator=() [1/2]

SWC_CAN_INLINE Values& SWC::DB::Specs::Values::operator= ( const Values other)
inline

Definition at line 47 of file SpecsValues.h.

References copy().

+ Here is the call graph for this function:

◆ operator=() [2/2]

SWC_CAN_INLINE Values& SWC::DB::Specs::Values::operator= ( Values &&  other)
inlinenoexcept

Definition at line 53 of file SpecsValues.h.

References move().

+ Here is the call graph for this function:

◆ print()

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

Definition at line 42 of file SpecsValues.cc.

References col_type, SWC::Core::Vector< Value >::empty(), and SWC::Core::Vector< Value >::size().

Referenced by SWC::DB::Specs::Interval::print().

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

◆ size_of_internal()

SWC_CAN_INLINE size_t SWC::DB::Specs::Values::size_of_internal ( ) const
noexcept

Definition at line 125 of file SpecsValues.h.

Referenced by SWC::DB::Specs::Interval::size_of_internal().

+ Here is the caller graph for this function:

Member Data Documentation

◆ col_type


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