momo  3.9
momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager > Class Template Reference

#include <TreeMap.h>

Inheritance diagram for momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager >:
momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >

Public Types

typedef TKey Key
 
typedef TValue Value
 
typedef TMemManager MemManager
 
- Public Types inherited from momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >
typedef TKey Key
 
typedef TValue Value
 
typedef TMemManager MemManager
 
template<typename... ValueArgs>
using ValueCreator = typename ValueManager::template Creator< ValueArgs... >
 

Static Public Member Functions

template<typename KeyIterator >
static void ShiftKeyNothrow (MemManager &memManager, KeyIterator keyBegin, size_t shift) noexcept
 
template<typename ValueIterator >
static void ShiftValueNothrow (MemManager &memManager, ValueIterator valueBegin, size_t shift) noexcept
 
- Static Public Member Functions inherited from momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >
template<typename ValueCreator >
static void Create (MemManager &memManager, Key &&key, ValueCreator &&valueCreator, Key *newKey, Value *newValue)
 
template<typename ValueCreator >
static void Create (MemManager &memManager, const Key &key, ValueCreator &&valueCreator, Key *newKey, Value *newValue)
 
static void Destroy (MemManager *memManager, Key &key, Value &value) noexcept
 
static void Relocate (MemManager *memManager, Key &srcKey, Value &srcValue, Key *dstKey, Value *dstValue)
 
static void Replace (MemManager &memManager, Key &srcKey, Value &srcValue, Key &dstKey, Value &dstValue)
 
static void ReplaceRelocate (MemManager &memManager, Key &srcKey, Value &srcValue, Key &midKey, Value &midValue, Key *dstKey, Value *dstValue)
 
template<typename KeyIterator , typename ValueIterator , typename Executor >
static void RelocateExec (MemManager &memManager, KeyIterator srcKeyBegin, ValueIterator srcValueBegin, KeyIterator dstKeyBegin, ValueIterator dstValueBegin, size_t count, Executor &&exec)
 
template<typename KeyArg >
static void AssignKey (MemManager &, KeyArg &&keyArg, Key &key)
 

Static Public Attributes

static const bool isKeyNothrowShiftable = KeyManager::isNothrowShiftable
 
static const bool isValueNothrowShiftable = ValueManager::isNothrowShiftable
 
- Static Public Attributes inherited from momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >
static const size_t keyAlignment = KeyManager::alignment
 
static const size_t valueAlignment = ValueManager::alignment
 
static const bool isKeyNothrowRelocatable = KeyManager::isNothrowRelocatable
 
static const bool isValueNothrowRelocatable = ValueManager::isNothrowRelocatable
 

Member Typedef Documentation

◆ Key

template<typename TKey , typename TValue , typename TMemManager >
typedef TKey momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >::Key

◆ MemManager

template<typename TKey , typename TValue , typename TMemManager >
typedef TMemManager momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >::MemManager

◆ Value

template<typename TKey , typename TValue , typename TMemManager >
typedef TValue momo::internal::MapKeyValueTraits< TKey, TValue, TMemManager >::Value

Member Function Documentation

◆ ShiftKeyNothrow()

template<typename TKey , typename TValue , typename TMemManager >
template<typename KeyIterator >
static void momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager >::ShiftKeyNothrow ( MemManager memManager,
KeyIterator  keyBegin,
size_t  shift 
)
inlinestaticnoexcept

◆ ShiftValueNothrow()

template<typename TKey , typename TValue , typename TMemManager >
template<typename ValueIterator >
static void momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager >::ShiftValueNothrow ( MemManager memManager,
ValueIterator  valueBegin,
size_t  shift 
)
inlinestaticnoexcept

Member Data Documentation

◆ isKeyNothrowShiftable

template<typename TKey , typename TValue , typename TMemManager >
const bool momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager >::isKeyNothrowShiftable = KeyManager::isNothrowShiftable
static

◆ isValueNothrowShiftable

template<typename TKey , typename TValue , typename TMemManager >
const bool momo::TreeMapKeyValueTraits< TKey, TValue, TMemManager >::isValueNothrowShiftable = ValueManager::isNothrowShiftable
static

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