HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_KEY_VALUE > Class Template Reference

#include <hashmap.h>

Public Types

using EntryHandler = ENTRY_HANDLER
 
using HashValueType = typename ENTRY_HANDLER::HashValueType
 

Public Member Functions

const K & GetKey () const
 
V & GetValue ()
 
const V & GetValue () const
 
const K & GetFirst () const
 
V & GetSecond ()
 
const V & GetSecond () const
 
void SetValue (const V &value)
 
void SetValue (V &&value)
 
void ResetValue ()
 
const HashValueTypeGetKeyHashCode () const
 
Int GetMemorySize () const
 
 HashMapEntryBase (HashValueType hash)
 
 HashMapEntryBase (HashValueType hash, const K &key)
 
 HashMapEntryBase (HashValueType hash, K &&key)
 
template<typename A >
 HashMapEntryBase (HashValueType hash, const K &key, A &&value)
 
template<typename A >
 HashMapEntryBase (HashValueType hash, K &&key, A &&value)
 

Protected Member Functions

 MAXON_DISALLOW_COPY_AND_ASSIGN (HashMapEntryBase)
 

Protected Attributes

HashMapEntryBase_next
 
HashValueType _hashCode
 
_key
 
_value
 

Member Typedef Documentation

◆ EntryHandler

using EntryHandler = ENTRY_HANDLER

◆ HashValueType

using HashValueType = typename ENTRY_HANDLER::HashValueType

Constructor & Destructor Documentation

◆ HashMapEntryBase() [1/5]

HashMapEntryBase ( HashValueType  hash)
explicit

◆ HashMapEntryBase() [2/5]

HashMapEntryBase ( HashValueType  hash,
const K &  key 
)

◆ HashMapEntryBase() [3/5]

HashMapEntryBase ( HashValueType  hash,
K &&  key 
)

◆ HashMapEntryBase() [4/5]

HashMapEntryBase ( HashValueType  hash,
const K &  key,
A &&  value 
)

◆ HashMapEntryBase() [5/5]

HashMapEntryBase ( HashValueType  hash,
K &&  key,
A &&  value 
)

Member Function Documentation

◆ GetKey()

const K& GetKey ( ) const

◆ GetValue() [1/2]

V& GetValue ( )

◆ GetValue() [2/2]

const V& GetValue ( ) const

◆ GetFirst()

const K& GetFirst ( ) const

◆ GetSecond() [1/2]

V& GetSecond ( )

◆ GetSecond() [2/2]

const V& GetSecond ( ) const

◆ SetValue() [1/2]

void SetValue ( const V &  value)

◆ SetValue() [2/2]

void SetValue ( V &&  value)

◆ ResetValue()

void ResetValue ( )

◆ GetKeyHashCode()

const HashValueType& GetKeyHashCode ( ) const

◆ GetMemorySize()

Int GetMemorySize ( ) const

◆ MAXON_DISALLOW_COPY_AND_ASSIGN()

MAXON_DISALLOW_COPY_AND_ASSIGN ( HashMapEntryBase< K, V, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::HASH_KEY_VALUE )
protected

Member Data Documentation

◆ _next

HashMapEntryBase* _next
protected

◆ _hashCode

HashValueType _hashCode
protected

◆ _key

K _key
protected

◆ _value

V _value
protected