NIM 跨平台 C++ SDK
载入中...
搜索中...
未找到
phmap::priv::map_slot_policy< K, V > 模板结构体 参考

#include <phmap_base.h>

Public 类型

using slot_type = map_slot_type< K, V >
 
using value_type = std::pair< const K, V >
 
using mutable_value_type = std::pair< K, V >
 

静态 Public 成员函数

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

Private 类型

using kMutableKeys = memory_internal::IsLayoutCompatible< K, V >
 

静态 Private 成员函数

static void emplace (slot_type *slot)
 

成员类型定义说明

◆ kMutableKeys

template<class K , class V >
using phmap::priv::map_slot_policy< K, V >::kMutableKeys = memory_internal::IsLayoutCompatible<K, V>
private

◆ mutable_value_type

template<class K , class V >
using phmap::priv::map_slot_policy< K, V >::mutable_value_type = std::pair<K, V>

◆ slot_type

template<class K , class V >
using phmap::priv::map_slot_policy< K, V >::slot_type = map_slot_type<K, V>

◆ value_type

template<class K , class V >
using phmap::priv::map_slot_policy< K, V >::value_type = std::pair<const K, V>

成员函数说明

◆ construct() [1/2]

template<class K , class V >
template<class Allocator , class... Args>
static void phmap::priv::map_slot_policy< K, V >::construct ( Allocator alloc,
slot_type slot,
Args &&...  args 
)
inlinestatic

◆ construct() [2/2]

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::construct ( Allocator alloc,
slot_type slot,
slot_type other 
)
inlinestatic

◆ destroy()

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::destroy ( Allocator alloc,
slot_type slot 
)
inlinestatic

◆ element() [1/2]

template<class K , class V >
static const value_type & phmap::priv::map_slot_policy< K, V >::element ( const slot_type slot)
inlinestatic

◆ element() [2/2]

template<class K , class V >
static value_type & phmap::priv::map_slot_policy< K, V >::element ( slot_type slot)
inlinestatic

◆ emplace()

template<class K , class V >
static void phmap::priv::map_slot_policy< K, V >::emplace ( slot_type slot)
inlinestaticprivate

◆ key()

template<class K , class V >
static const K & phmap::priv::map_slot_policy< K, V >::key ( const slot_type slot)
inlinestatic

◆ move() [1/2]

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::move ( Allocator alloc,
slot_type first,
slot_type last,
slot_type result 
)
inlinestatic

◆ move() [2/2]

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::move ( Allocator alloc,
slot_type src,
slot_type dest 
)
inlinestatic

◆ swap()

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::swap ( Allocator alloc,
slot_type a,
slot_type b 
)
inlinestatic

◆ transfer()

template<class K , class V >
template<class Allocator >
static void phmap::priv::map_slot_policy< K, V >::transfer ( Allocator alloc,
slot_type new_slot,
slot_type old_slot 
)
inlinestatic

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