Scorum
Classes | Enumerations | Functions
scorum::chain::dba::detail Namespace Reference

Classes

struct  bound
 

Enumerations

enum class  bound_kind {
  lt , le , gt , ge ,
  unbounded
}
 

Functions

template<typename TObject >
size_t size (db_index &db_idx)
 
template<typename TObject >
const TObject & create (db_index &db_idx, modifier_type< TObject > modifier)
 
template<typename TObject >
const TObject & get_single (db_index &db_idx)
 
template<typename TObject >
const TObject & update (db_index &db_idx, const TObject &o, modifier_type< TObject > modifier)
 
template<typename TObject >
const TObject & update_single (db_index &db_idx, modifier_type< TObject > modifier)
 
template<typename TObject >
void remove (db_index &db_idx, const TObject &o)
 
template<typename TObject >
void remove_all (db_index &db_idx, utils::bidir_range< const TObject > items)
 
template<typename TObject >
void remove_single (db_index &db_idx)
 
template<typename TObject >
bool is_empty (db_index &db_idx)
 
template<typename TObject , typename IndexBy , typename Key >
const TObject & get_by (db_index &db_idx, const Key &arg)
 
template<typename TObject , typename IndexBy , typename Key >
const TObject * find_by (db_index &db_idx, const Key &arg)
 
template<typename TObject , typename IndexBy , typename Key >
bool is_exists_by (db_index &db_idx, const Key &arg)
 
template<typename TObject , typename IndexBy , typename TKey >
utils::forward_range< const TObject > hashed_get_range_by (db_index &db_idx, const TKey &key)
 
template<typename TObject , typename IndexBy , typename TKey >
utils::bidir_range< const TObject > ordered_get_range_by (db_index &db_idx, const TKey &key)
 
template<typename TIdx , typename TKey >
auto get_lower_bound (TIdx &idx, const detail::bound< TKey > &bound)
 
template<typename TIdx , typename TKey >
auto get_upper_bound (TIdx &idx, const detail::bound< TKey > &bound)
 
template<typename TObject , typename IndexBy , typename TKeyLhs , typename TKeyRhs = TKeyLhs>
utils::bidir_range< const TObject > get_range_by (db_index &db_idx, const detail::bound< TKeyLhs > &lower, const detail::bound< TKeyRhs > &upper)
 
template<typename TObject , typename IndexBy >
utils::bidir_range< const TObject > get_all_by (db_index &db_idx)
 

Enumeration Type Documentation

◆ bound_kind

Enumerator
lt 
le 
gt 
ge 
unbounded 

Definition at line 27 of file db_accessor_helpers.hpp.

Function Documentation

◆ create()

template<typename TObject >
const TObject& scorum::chain::dba::detail::create ( db_index db_idx,
modifier_type< TObject >  modifier 
)

Definition at line 30 of file db_accessor.hpp.

◆ find_by()

template<typename TObject , typename IndexBy , typename Key >
const TObject* scorum::chain::dba::detail::find_by ( db_index db_idx,
const Key &  arg 
)

Definition at line 88 of file db_accessor.hpp.

◆ get_all_by()

template<typename TObject , typename IndexBy >
utils::bidir_range<const TObject> scorum::chain::dba::detail::get_all_by ( db_index db_idx)

Definition at line 135 of file db_accessor.hpp.

◆ get_by()

template<typename TObject , typename IndexBy , typename Key >
const TObject& scorum::chain::dba::detail::get_by ( db_index db_idx,
const Key &  arg 
)

Definition at line 79 of file db_accessor.hpp.

◆ get_lower_bound()

template<typename TIdx , typename TKey >
auto scorum::chain::dba::detail::get_lower_bound ( TIdx &  idx,
const detail::bound< TKey > &  bound 
)

Definition at line 142 of file db_accessor.hpp.

◆ get_range_by()

template<typename TObject , typename IndexBy , typename TKeyLhs , typename TKeyRhs = TKeyLhs>
utils::bidir_range<const TObject> scorum::chain::dba::detail::get_range_by ( db_index db_idx,
const detail::bound< TKeyLhs > &  lower,
const detail::bound< TKeyRhs > &  upper 
)

Definition at line 125 of file db_accessor.hpp.

◆ get_single()

template<typename TObject >
const TObject& scorum::chain::dba::detail::get_single ( db_index db_idx)

Definition at line 35 of file db_accessor.hpp.

◆ get_upper_bound()

template<typename TIdx , typename TKey >
auto scorum::chain::dba::detail::get_upper_bound ( TIdx &  idx,
const detail::bound< TKey > &  bound 
)

Definition at line 159 of file db_accessor.hpp.

◆ hashed_get_range_by()

template<typename TObject , typename IndexBy , typename TKey >
utils::forward_range<const TObject> scorum::chain::dba::detail::hashed_get_range_by ( db_index db_idx,
const TKey &  key 
)

Definition at line 107 of file db_accessor.hpp.

◆ is_empty()

template<typename TObject >
bool scorum::chain::dba::detail::is_empty ( db_index db_idx)

Definition at line 74 of file db_accessor.hpp.

◆ is_exists_by()

template<typename TObject , typename IndexBy , typename Key >
bool scorum::chain::dba::detail::is_exists_by ( db_index db_idx,
const Key &  arg 
)

Definition at line 97 of file db_accessor.hpp.

◆ ordered_get_range_by()

template<typename TObject , typename IndexBy , typename TKey >
utils::bidir_range<const TObject> scorum::chain::dba::detail::ordered_get_range_by ( db_index db_idx,
const TKey &  key 
)

Definition at line 114 of file db_accessor.hpp.

◆ remove()

template<typename TObject >
void scorum::chain::dba::detail::remove ( db_index db_idx,
const TObject &  o 
)

Definition at line 57 of file db_accessor.hpp.

◆ remove_all()

template<typename TObject >
void scorum::chain::dba::detail::remove_all ( db_index db_idx,
utils::bidir_range< const TObject >  items 
)

Definition at line 62 of file db_accessor.hpp.

◆ remove_single()

template<typename TObject >
void scorum::chain::dba::detail::remove_single ( db_index db_idx)

Definition at line 69 of file db_accessor.hpp.

◆ size()

template<typename TObject >
size_t scorum::chain::dba::detail::size ( db_index db_idx)

Definition at line 25 of file db_accessor.hpp.

◆ update()

template<typename TObject >
const TObject& scorum::chain::dba::detail::update ( db_index db_idx,
const TObject &  o,
modifier_type< TObject >  modifier 
)

Definition at line 44 of file db_accessor.hpp.

◆ update_single()

template<typename TObject >
const TObject& scorum::chain::dba::detail::update_single ( db_index db_idx,
modifier_type< TObject >  modifier 
)

Definition at line 50 of file db_accessor.hpp.