Scroll to navigation

std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >(3cxx) std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >(3cxx)

NAME

std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >

SYNOPSIS

#include <hashtable_policy.h>

Inherits std::__detail::_Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, _Traits::__hash_cached::value >, and std::__detail::_Hashtable_ebo_helper< 0, _Equal >.

Inherited by std::_Hashtable< _Key, _Tp, _Hash, _Pred, allocator< std::pair< const _Key, _Tp > > >, std::_Hashtable< _Key, _Tp, hash< _Key >, equal_to< _Key >, allocator< std::pair< const _Key, _Tp > > >, std::_Hashtable< _Value, hash< _Value >, equal_to< _Value >, allocator< _Value > >, and std::_Hashtable< _Key, _Value, _Alloc, _ExtractKey, _Equal, _H1, _H2, _Hash, _RehashPolicy, _Traits >.

Public Types


using __constant_iterators = typename __traits_type::__constant_iterators
using __hash_cached = typename __traits_type::__hash_cached
using __hash_code = typename __hash_code_base::__hash_code
using __hash_code_base = _Hash_code_base< _Key, _Value, _ExtractKey, _H1, _H2, _Hash, __hash_cached::value >
using __ireturn_type = typename std::conditional< __unique_keys::value, std::pair< iterator, bool >, iterator >::type
using __node_type = typename __hash_code_base::__node_type
using __traits_type = _Traits
using __unique_keys = typename __traits_type::__unique_keys
using const_iterator = __detail::_Node_const_iterator< value_type, __constant_iterators::value, __hash_cached::value >
using const_local_iterator = __detail::_Local_const_iterator< key_type, value_type, _ExtractKey, _H1, _H2, _Hash, __constant_iterators::value, __hash_cached::value >
typedef std::ptrdiff_t difference_type
using iterator = __detail::_Node_iterator< value_type, __constant_iterators::value, __hash_cached::value >
typedef _Equal key_equal
typedef _Key key_type
using local_iterator = __detail::_Local_iterator< key_type, value_type, _ExtractKey, _H1, _H2, _Hash, __constant_iterators::value, __hash_cached::value >
typedef std::size_t size_type
typedef _Value value_type

Protected Member Functions


_Hashtable_base (const _ExtractKey &__ex, const _H1 &__h1, const _H2 &__h2, const _Hash &__hash, const _Equal &__eq)
_Equal & _M_eq ()
const _Equal & _M_eq () const
bool _M_equals (const _Key &__k, __hash_code __c, __node_type *__n) const
void _M_swap (_Hashtable_base &__x)

Detailed Description

template<typename _Key, typename _Value, typename _ExtractKey, typename _Equal, typename _H1, typename _H2, typename _Hash, typename _Traits>

struct std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >"Primary class template _Hashtable_base.

Helper class adding management of _Equal functor to _Hash_code_base type.

Base class templates are:

  • __detail::_Hash_code_base
  • __detail::_Hashtable_ebo_helper

Definition at line 1770 of file hashtable_policy.h.

Member Typedef Documentation

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__constant_iterators = typename __traits_type::__constant_iterators

Definition at line 1784 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__hash_cached = typename __traits_type::__hash_cached

Definition at line 1783 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__hash_code = typename __hash_code_base::__hash_code

Definition at line 1791 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__hash_code_base = _Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, _Hash, __hash_cached::value>

Definition at line 1787 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__ireturn_type = typename std::conditional<__unique_keys::value, std::pair<iterator, bool>, iterator>::type

Definition at line 1813 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__node_type = typename __hash_code_base::__node_type

Definition at line 1792 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__traits_type = _Traits

Definition at line 1782 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::__unique_keys = typename __traits_type::__unique_keys

Definition at line 1785 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::const_iterator = __detail::_Node_const_iterator<value_type, __constant_iterators::value, __hash_cached::value>

Definition at line 1798 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::const_local_iterator = __detail::_Local_const_iterator<key_type, value_type, _ExtractKey, _H1, _H2, _Hash, __constant_iterators::value, __hash_cached::value>

Definition at line 1807 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > typedef std::ptrdiff_t std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::difference_type

Definition at line 1780 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::iterator = __detail::_Node_iterator<value_type, __constant_iterators::value, __hash_cached::value>

Definition at line 1794 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > typedef _Equal std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::key_equal

Definition at line 1778 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > typedef _Key std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::key_type

Definition at line 1776 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > using std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::local_iterator = __detail::_Local_iterator<key_type, value_type, _ExtractKey, _H1, _H2, _Hash, __constant_iterators::value, __hash_cached::value>

Definition at line 1802 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > typedef std::size_t std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::size_type

Definition at line 1779 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > typedef _Value std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::value_type

Definition at line 1777 of file hashtable_policy.h.

Constructor & Destructor Documentation

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::_Hashtable_base (const _ExtractKey & __ex, const _H1 & __h1, const _H2 & __h2, const _Hash & __hash, const _Equal & __eq) [inline], [protected]

Definition at line 1823 of file hashtable_policy.h.

Member Function Documentation

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > _Equal & std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::_M_eq () [inline], [protected]

Definition at line 1849 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > const _Equal & std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::_M_eq () const [inline], [protected]

Definition at line 1846 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > bool std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::_M_equals (const _Key & __k, __hash_code __c, __node_type * __n) const [inline], [protected]

Definition at line 1829 of file hashtable_policy.h.

template<typename _Key , typename _Value , typename _ExtractKey , typename _Equal , typename _H1 , typename _H2 , typename _Hash , typename _Traits > void std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits >::_M_swap (_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _H1, _H2, _Hash, _Traits > & __x) [inline], [protected]

Definition at line 1839 of file hashtable_policy.h.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++