__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true > Class Template Reference

`#include <ranged_hash_fn.hpp>`

Inherits Hash_Fn, and Comb_Hash_Fn.

## Protected Types

typedef Comb_Hash_Fn | comb_hash_fn_base
typedef std::pair< size_type, size_type > | comp_hash
typedef Hash_Fn | hash_fn_base
typedef _Alloc::template rebind< Key >::other | key_allocator
typedef key_allocator::const_reference | key_const_reference
typedef _Alloc::size_type | size_type

## Protected Member Functions

| ranged_hash_fn (size_type)
| ranged_hash_fn (size_type, const Hash_Fn &)
| ranged_hash_fn (size_type, const Hash_Fn &, const Comb_Hash_Fn &)
void | notify_resized (size_type)
comp_hash | operator() (key_const_reference) const
comp_hash | operator() (key_const_reference, size_type) const
void | swap (ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true > &)

## Detailed Description

template<typename Key, typename Hash_Fn, typename _Alloc, typename Comb_Hash_Fn>
class __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >

Specialization 2 The client supplies a hash function and a ranged hash function, and requests that hash values be stored.

Definition at line 153 of file ranged_hash_fn.hpp.

## Member Typedef Documentation

## comb_hash_fn_base

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef Comb_Hash_Fn __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::comb_hash_fn_base

protected

Definition at line 160 of file ranged_hash_fn.hpp.

## comp_hash

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef std::pair<size_type, size_type> __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::comp_hash

protected

Definition at line 158 of file ranged_hash_fn.hpp.

## hash_fn_base

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef Hash_Fn __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::hash_fn_base

protected

Definition at line 159 of file ranged_hash_fn.hpp.

## key_allocator

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef _Alloc::template rebind<Key>::other __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::key_allocator

protected

Definition at line 161 of file ranged_hash_fn.hpp.

## key_const_reference

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef key_allocator::const_reference __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::key_const_reference

protected

Definition at line 162 of file ranged_hash_fn.hpp.

## size_type

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

typedef _Alloc::size_type __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::size_type

protected

Definition at line 157 of file ranged_hash_fn.hpp.

## Constructor & Destructor Documentation

## ranged_hash_fn() [1/3]

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::ranged_hash_fn | ( | size_type | size | ) |

protected

Definition at line 184 of file ranged_hash_fn.hpp.

## ranged_hash_fn() [2/3]

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::ranged_hash_fn | ( | size_type | size,
|  | const Hash_Fn & | r_hash_fn
| ) |  |

protected

Definition at line 189 of file ranged_hash_fn.hpp.

## ranged_hash_fn() [3/3]

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

__gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::ranged_hash_fn | ( | size_type | size,
|  | const Hash_Fn & | r_hash_fn,
|  | const Comb_Hash_Fn & | r_comb_hash_fn
| ) |  |

protected

Definition at line 195 of file ranged_hash_fn.hpp.

## Member Function Documentation

## notify_resized()

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

void __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::notify_resized | ( | size_type | size | ) |

protected

Definition at line 212 of file ranged_hash_fn.hpp.

## operator()() [1/2]

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::comp_hash __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::operator() | ( | key_const_reference | r_key | ) | const

inline protected

Definition at line 218 of file ranged_hash_fn.hpp.

## operator()() [2/2]

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::comp_hash __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::operator() | ( | key_const_reference | ,
|  | size_type | hash
| ) |  | const

inline protected

Definition at line 227 of file ranged_hash_fn.hpp.

## swap()

template<typename Key , typename Hash_Fn , typename _Alloc , typename Comb_Hash_Fn >

void __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true >::swap | ( | ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, true > & | other | ) |

protected

Definition at line 203 of file ranged_hash_fn.hpp.

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

- ranged_hash_fn.hpp