std::__detail::_Hashtable_base - Man Page

std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _Traits >

Synopsis

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

Inherited by std::_Hashtable< _Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits >.

Public Types

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, _Hash, _RangeHash, _Unused, __hash_cached::value >
using __traits_type = _Traits
typedef std::ptrdiff_t difference_type
typedef _Hash hasher
typedef _Equal key_equal
typedef _Key key_type
typedef std::size_t size_type
typedef _Value value_type

Public Member Functions

hasher hash_function () const

Protected Member Functions

_Hashtable_base (const _Hash &__hash, const _Equal &__eq)
std::size_t _M_bucket_index (__hash_code __c, std::size_t __bkt_count) const
std::size_t _M_bucket_index (const _Hash_node_value< _Value, false > &__n, std::size_t __bkt_count) const noexcept(noexcept(declval< const _Hash & >()(declval< const _Key & >())) &&noexcept(declval< const _RangeHash & >()((__hash_code) 0,(std::size_t) 0)))
std::size_t _M_bucket_index (const _Hash_node_value< _Value, true > &__n, std::size_t __bkt_count) const noexcept(noexcept(declval< const _RangeHash & >()((__hash_code) 0,(std::size_t) 0)))
void _M_copy_code (_Hash_node_code_cache< false > &, const _Hash_node_code_cache< false > &) const
void _M_copy_code (_Hash_node_code_cache< true > &__to, const _Hash_node_code_cache< true > &__from) const
const _Equal & _M_eq () const
bool _M_equals (const _Key &__k, __hash_code __c, const _Hash_node_value< _Value, __hash_cached::value > &__n) const
template<typename _Kt > bool _M_equals_tr (const _Kt &__k, __hash_code __c, const _Hash_node_value< _Value, __hash_cached::value > &__n) const
const _Hash & _M_hash () const
__hash_code _M_hash_code (const _Key &__k) const
__hash_code _M_hash_code_tr (const _Kt &__k) const
bool _M_node_equals (const _Hash_node_value< _Value, __hash_cached::value > &__lhn, const _Hash_node_value< _Value, __hash_cached::value > &__rhn) const
void _M_store_code (_Hash_node_code_cache< false > &, __hash_code) const
void _M_store_code (_Hash_node_code_cache< true > &__n, __hash_code __c) const
void _M_swap (_Hash_code_base &__x)
void _M_swap (_Hashtable_base &__x)

Detailed Description

template<typename _Key, typename _Value, typename _ExtractKey, typename _Equal, typename _Hash, typename _RangeHash, typename _Unused, typename _Traits>

struct std::__detail::_Hashtable_base< _Key, _Value, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _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 1559 of file hashtable_policy.h.

Author

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

Info

Wed Apr 28 2021 libstdc++