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

#include <btree.h>

类 phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi > 继承关系图:
phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, phmap::priv::map_slot_policy< Key, Data > >

struct  value_compare
 

Public 类型

using super_type = typename map_params::common_params
 
using mapped_type = Data
 
using slot_policy = typename super_type::slot_policy
 
using slot_type = typename super_type::slot_type
 
using value_type = typename super_type::value_type
 
using init_type = typename super_type::init_type
 
using key_compare = typename super_type::key_compare
 
using is_map_container = std::true_type
 
- Public 类型 继承自 phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, phmap::priv::map_slot_policy< Key, Data > >
enum  
 
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 = phmap::priv::map_slot_policy< Key, Data >
 
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 = phmap::conditional_t<(kNodeSlotSpace/sizeof(slot_type) >(std::numeric_limits< uint8_t >::max)()), uint16_t, uint8_t >
 

静态 Public 成员函数

static const Key & key (const value_type &x)
 
static const Key & key (const init_type &x)
 
static const Key & key (const slot_type *x)
 
static mapped_typevalue (value_type *value)
 
- 静态 Public 成员函数 继承自 phmap::priv::common_params< Key, Compare, Alloc, TargetNodeSize, Multi, phmap::priv::map_slot_policy< Key, Data > >
static value_typeelement (slot_type *slot)
 
static const value_typeelement (const slot_type *slot)
 
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)
 

成员类型定义说明

◆ init_type

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::init_type = typename super_type::init_type

◆ is_map_container

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::is_map_container = std::true_type

◆ key_compare

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::key_compare = typename super_type::key_compare

◆ mapped_type

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::mapped_type = Data

◆ slot_policy

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::slot_policy = typename super_type::slot_policy

◆ slot_type

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::slot_type = typename super_type::slot_type

◆ super_type

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::super_type = typename map_params::common_params

◆ value_type

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
using phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::value_type = typename super_type::value_type

成员函数说明

◆ key() [1/3]

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
static const Key & phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::key ( const init_type x)
inlinestatic

◆ key() [2/3]

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
static const Key & phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::key ( const slot_type x)
inlinestatic

◆ key() [3/3]

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
static const Key & phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::key ( const value_type x)
inlinestatic

◆ value()

template<typename Key , typename Data , typename Compare , typename Alloc , int TargetNodeSize, bool Multi>
static mapped_type & phmap::priv::map_params< Key, Data, Compare, Alloc, TargetNodeSize, Multi >::value ( value_type value)
inlinestatic

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