NIM 跨平台 C++ SDK
载入中...
搜索中...
未找到
phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy > 模板结构体 参考

#include <btree.h>

Public 类型

enum  { kTargetNodeSize = TargetNodeSize , kNodeSlotSpace }
 
using key_compare = typename key_compare_to_adapter<Compare>::type
 
using is_key_compare_to = btree_is_key_compare_to<key_compare, Key>
 
using allocator_type = Alloc
 
using key_type = Key
 
using size_type = std::size_t
 
using difference_type = ptrdiff_t
 
using is_multi_container = std::integral_constant<bool, Multi>
 
using slot_policy = SlotPolicy
 
using slot_type = typename slot_policy::slot_type
 
using value_type = typename slot_policy::value_type
 
using init_type = typename slot_policy::mutable_value_type
 
using pointer = value_type *
 
using const_pointer = const value_type *
 
using reference = value_type &
 
using const_reference = const value_type &
 
using node_count_type
 

静态 Public 成员函数

static value_typeelement (slot_type *slot)
 
static const value_typeelement (const slot_type *slot)
 
template<class... Args>
static void construct (Alloc *alloc, slot_type *slot, Args &&... args)
 
static void construct (Alloc *alloc, slot_type *slot, slot_type *other)
 
static void destroy (Alloc *alloc, slot_type *slot)
 
static void transfer (Alloc *alloc, slot_type *new_slot, slot_type *old_slot)
 
static void swap (Alloc *alloc, slot_type *a, slot_type *b)
 
static void move (Alloc *alloc, slot_type *src, slot_type *dest)
 
static void move (Alloc *alloc, slot_type *first, slot_type *last, slot_type *result)
 

成员类型定义说明

◆ allocator_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::allocator_type = Alloc

◆ const_pointer

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::const_pointer = const value_type *

◆ const_reference

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::const_reference = const value_type &

◆ difference_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::difference_type = ptrdiff_t

◆ init_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::init_type = typename slot_policy::mutable_value_type

◆ is_key_compare_to

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::is_key_compare_to = btree_is_key_compare_to<key_compare, Key>

◆ is_multi_container

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::is_multi_container = std::integral_constant<bool, Multi>

◆ key_compare

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::key_compare = typename key_compare_to_adapter<Compare>::type

◆ key_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::key_type = Key

◆ node_count_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::node_count_type
初始值:
(std::numeric_limits<uint8_t>::max)()),
uint16_t, uint8_t>
typename std::conditional< B, T, F >::type conditional_t
Definition phmap_base.h:322
typename slot_policy::slot_type slot_type
Definition btree.h:847
@ kNodeSlotSpace
Definition btree.h:861

◆ pointer

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::pointer = value_type *

◆ reference

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::reference = value_type &

◆ size_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::size_type = std::size_t

◆ slot_policy

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::slot_policy = SlotPolicy

◆ slot_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::slot_type = typename slot_policy::slot_type

◆ value_type

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
using phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::value_type = typename slot_policy::value_type

成员枚举类型说明

◆ anonymous enum

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
anonymous enum
枚举值
kTargetNodeSize 
kNodeSlotSpace 

成员函数说明

◆ construct() [1/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
template<class... Args>
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::construct ( Alloc * alloc,
slot_type * slot,
Args &&... args )
inlinestatic

◆ construct() [2/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::construct ( Alloc * alloc,
slot_type * slot,
slot_type * other )
inlinestatic

◆ destroy()

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::destroy ( Alloc * alloc,
slot_type * slot )
inlinestatic

◆ element() [1/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static const value_type & phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::element ( const slot_type * slot)
inlinestatic

◆ element() [2/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static value_type & phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::element ( slot_type * slot)
inlinestatic

◆ move() [1/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::move ( Alloc * alloc,
slot_type * first,
slot_type * last,
slot_type * result )
inlinestatic

◆ move() [2/2]

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::move ( Alloc * alloc,
slot_type * src,
slot_type * dest )
inlinestatic

◆ swap()

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::swap ( Alloc * alloc,
slot_type * a,
slot_type * b )
inlinestatic

◆ transfer()

template<typename Key , typename Compare , typename Alloc , int TargetNodeSize, bool Multi, typename SlotPolicy >
static void phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, SlotPolicy >::transfer ( Alloc * alloc,
slot_type * new_slot,
slot_type * old_slot )
inlinestatic

该结构体的文档由以下文件生成: