std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false > Struct Template Reference
Containers » Unordered Associative » Base and Implementation Classes

`#include <hashtable_policy.h>`

Inheritance diagram for std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >:
[legend]

## Public Types

typedef _H1 | hasher

## Public Member Functions

hasher | hash_function () const

## Protected Types

typedef std::size_t | __hash_code
typedef _Hash_node< _Value, false > | __node_type

## Protected Member Functions

| _Hash_code_base (const _ExtractKey &__ex, const _H1 &__h1, const _H2 &__h2, const _Default_ranged_hash &)
std::size_t | _M_bucket_index (const __node_type *__p, std::size_t __n) const noexcept(noexcept(declval< const _H1 & >()(declval< const _Key & >())) &&noexcept(declval< const _H2 & >()((__hash_code) 0,(std::size_t) 0)))
std::size_t | _M_bucket_index (const _Key &, __hash_code __c, std::size_t __n) const
void | _M_copy_code (__node_type *, const __node_type *) const
_ExtractKey & | _M_extract ()
const _ExtractKey & | _M_extract () const
_H1 & | _M_h1 ()
const _H1 & | _M_h1 () const
_H2 & | _M_h2 ()
const _H2 & | _M_h2 () const
__hash_code | _M_hash_code (const _Key &__k) const
void | _M_store_code (__node_type *, __hash_code) const
void | _M_swap (_Hash_code_base &__x)

## Friends

struct | _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >

## Detailed Description

template<typename _Key, typename _Value, typename _ExtractKey, typename _H1, typename _H2>
struct std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >

Specialization: hash function and range-hashing function, no caching of hash codes. Provides typedef and accessor required by C++ 11.

Definition at line 1252 of file hashtable_policy.h.

## Member Typedef Documentation

## __hash_code

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

typedef std::size_t std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::__hash_code

protected

Definition at line 1275 of file hashtable_policy.h.

## __node_type

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

typedef _Hash_node<_Value, false> std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::__node_type

protected

Definition at line 1276 of file hashtable_policy.h.

## hasher

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

typedef _H1 std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::hasher

Definition at line 1268 of file hashtable_policy.h.

## Constructor & Destructor Documentation

## _Hash_code_base()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_Hash_code_base | ( | const _ExtractKey & | __ex,
|  | const _H1 & | __h1,
|  | const _H2 & | __h2,
|  | const _Default_ranged_hash & |
| ) |  |

inline protected

Definition at line 1282 of file hashtable_policy.h.

## Member Function Documentation

## _M_bucket_index() [1/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

std::size_t std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_bucket_index | ( | const __node_type * | __p,
|  | std::size_t | __n
| ) |  | const

inline protected noexcept

Definition at line 1300 of file hashtable_policy.h.

## _M_bucket_index() [2/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

std::size_t std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_bucket_index | ( | const _Key & | ,
|  | __hash_code | __c,
|  | std::size_t | __n
| ) |  | const

inline protected

Definition at line 1296 of file hashtable_policy.h.

## _M_copy_code()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

void std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_copy_code | ( | __node_type * | ,
|  | const __node_type * |
| ) |  | const

inline protected

Definition at line 1311 of file hashtable_policy.h.

## _M_extract() [1/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

_ExtractKey & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_extract | ( |  | ) |

inline protected

Definition at line 1326 of file hashtable_policy.h.

## _M_extract() [2/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

const _ExtractKey & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_extract | ( |  | ) | const

inline protected

Definition at line 1323 of file hashtable_policy.h.

## _M_h1() [1/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

_H1 & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_h1 | ( |  | ) |

inline protected

Definition at line 1332 of file hashtable_policy.h.

## _M_h1() [2/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

const _H1 & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_h1 | ( |  | ) | const

inline protected

Definition at line 1329 of file hashtable_policy.h.

## _M_h2() [1/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

_H2 & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_h2 | ( |  | ) |

inline protected

Definition at line 1338 of file hashtable_policy.h.

## _M_h2() [2/2]

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

const _H2 & std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_h2 | ( |  | ) | const

inline protected

Definition at line 1335 of file hashtable_policy.h.

## _M_hash_code()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

__hash_code std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_hash_code | ( | const _Key & | __k | ) | const

inline protected

Definition at line 1288 of file hashtable_policy.h.

## _M_store_code()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

void std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_store_code | ( | __node_type * | ,
|  | __hash_code |
| ) |  | const

inline protected

Definition at line 1307 of file hashtable_policy.h.

## _M_swap()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

void std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::_M_swap | ( | _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false > & | __x | ) |

inline protected

Definition at line 1315 of file hashtable_policy.h.

## hash_function()

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

hasher std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >::hash_function | ( |  | ) | const

inline

Definition at line 1271 of file hashtable_policy.h.

## Friends And Related Symbol Documentation

## _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >

template<typename _Key , typename _Value , typename _ExtractKey , typename _H1 , typename _H2 >

friend struct _Local_iterator_base< _Key, _Value, _ExtractKey, _H1, _H2, _Default_ranged_hash, false >

friend

Definition at line 1234 of file hashtable_policy.h.

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

- hashtable_policy.h