GNU g++  v5.2.1
GNU Standard C++
ranged_hash_fn.hpp File Reference

Contains a unified ranged hash functor, allowing the hash tables to deal with a single class for ranged hashing. More...

#include <utility>
#include <debug/debug.h>
Include dependency graph for ranged_hash_fn.hpp:
This graph shows which files directly or indirectly include this file:

Classes

class  __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, Store_Hash >
 Primary template. More...
 
class  __gnu_pbds::detail::ranged_hash_fn< Key, Hash_Fn, _Alloc, Comb_Hash_Fn, false >
 Specialization 1 The client supplies a hash function and a ranged hash function, and requests that hash values not be stored. More...
 
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. More...
 
class  __gnu_pbds::detail::ranged_hash_fn< Key, null_type, _Alloc, Comb_Hash_Fn, false >
 Specialization 3 The client does not supply a hash function (by specifying null_type as the Hash_Fn parameter), and requests that hash values not be stored. More...
 
class  __gnu_pbds::detail::ranged_hash_fn< Key, null_type, _Alloc, Comb_Hash_Fn, true >
 Specialization 4 The client does not supply a hash function (by specifying null_type as the Hash_Fn parameter), and requests that hash values be stored. More...
 

Namespaces

 __gnu_pbds
 GNU extensions for policy-based data structures for public use.
 
 __gnu_pbds::detail
 

Macros

#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, Hash_Fn, _Alloc, Comb_Hash_Fn, false>
 
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key,Hash_Fn, _Alloc, Comb_Hash_Fn, true>
 
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, null_type, _Alloc, Comb_Hash_Fn, false>
 
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, null_type, _Alloc, Comb_Hash_Fn, true>
 
#define PB_DS_CLASS_T_DEC
 
#define PB_DS_CLASS_T_DEC
 
#define PB_DS_CLASS_T_DEC   template<typename Key, typename _Alloc, typename Comb_Hash_Fn>
 
#define PB_DS_CLASS_T_DEC   template<typename Key, typename _Alloc, typename Comb_Hash_Fn>
 

Detailed Description

Contains a unified ranged hash functor, allowing the hash tables to deal with a single class for ranged hashing.

Macro Definition Documentation

#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, Hash_Fn, _Alloc, Comb_Hash_Fn, false>
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key,Hash_Fn, _Alloc, Comb_Hash_Fn, true>
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, null_type, _Alloc, Comb_Hash_Fn, false>
#define PB_DS_CLASS_C_DEC   ranged_hash_fn<Key, null_type, _Alloc, Comb_Hash_Fn, true>
#define PB_DS_CLASS_T_DEC
Value:
template<typename Key, typename Hash_Fn, typename _Alloc, \
typename Comb_Hash_Fn>
#define PB_DS_CLASS_T_DEC
Value:
template<typename Key, typename Hash_Fn, typename _Alloc, \
typename Comb_Hash_Fn>
#define PB_DS_CLASS_T_DEC   template<typename Key, typename _Alloc, typename Comb_Hash_Fn>
#define PB_DS_CLASS_T_DEC   template<typename Key, typename _Alloc, typename Comb_Hash_Fn>