__gnu_pbds::direct_mod_range_hashing(3) [debian man page]
__gnu_pbds::direct_mod_range_hashing< Size_Type >(3cxx) __gnu_pbds::direct_mod_range_hashing< Size_Type >(3cxx)
NAME
__gnu_pbds::direct_mod_range_hashing< Size_Type > -
SYNOPSIS
Inherits __gnu_pbds::detail::mod_based_range_hashing< Size_Type >.
Public Types
typedef Size_Type size_type
Public Member Functions
void swap (direct_mod_range_hashing< Size_Type > &other)
Protected Member Functions
void notify_resized (size_type size)
size_type operator() (size_type hash) const
size_type range_hash (size_type s) const
void swap (mod_based_range_hashing &other)
Detailed Description
template<typename Size_Type = std::size_t>class __gnu_pbds::direct_mod_range_hashing< Size_Type >
A mod range-hashing class (uses the modulo function).
Definition at line 141 of file hash_policy.hpp.
Member Function Documentation
template<typename Size_Type > direct_mod_range_hashing< Size_Type >::size_type __gnu_pbds::direct_mod_range_hashing< Size_Type >::operator()
(size_typehash) const [inline], [protected]
Transforms the __hash value hash into a ranged-hash value (using a modulo operation).
Definition at line 57 of file hash_policy.hpp.
Author
Generated automatically by Doxygen for libstdc++ from the source code.
libstdc++ Sun Jan 6 2013 __gnu_pbds::direct_mod_range_hashing< Size_Type >(3cxx)
Check Out this Related Man Page
__gnu_pbds::hash_load_check_resize_trigger< External_Load_Acces__gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type >(3cxx)
NAME
__gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type > -
SYNOPSIS
Inherits hash_load_check_resize_trigger_size_base< Size_Type, External_Load_Access >.
Public Types
enum { external_load_access }
typedef Size_Type size_type
Public Member Functions
hash_load_check_resize_trigger (float load_min=0.125, float load_max=0.5)
std::pair< float, float > get_loads () const
void set_loads (std::pair< float, float > load_pair)
void swap (hash_load_check_resize_trigger &other)
Protected Member Functions
bool is_grow_needed (size_type size, size_type num_entries) const
bool is_resize_needed () const
void notify_cleared ()
void notify_erase_search_collision ()
void notify_erase_search_end ()
void notify_erase_search_start ()
void notify_erased (size_type num_entries)
void notify_externally_resized (size_type new_size)
void notify_find_search_collision ()
void notify_find_search_end ()
void notify_find_search_start ()
void notify_insert_search_collision ()
void notify_insert_search_end ()
void notify_insert_search_start ()
void notify_inserted (size_type num_entries)
void notify_resized (size_type new_size)
Detailed Description
template<bool External_Load_Access = false, typename Size_Type = std::size_t>class __gnu_pbds::hash_load_check_resize_trigger<
External_Load_Access, Size_Type >
A resize trigger policy based on a load check. It keeps the load factor between some load factors load_min and load_max.
Definition at line 175 of file hash_policy.hpp.
Member Enumeration Documentation
template<bool External_Load_Access = false, typename Size_Type = std::size_t> anonymous enum
Enumerator:
external_load_access
Specifies whether the load factor can be accessed externally. The two options have different trade-offs in terms of flexibility,
genericity, and encapsulation.
Definition at line 180 of file hash_policy.hpp.
Constructor & Destructor Documentation
template<bool External_Load_Access, typename Size_Type > __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
>::hash_load_check_resize_trigger (floatload_min = 0.125, floatload_max = 0.5)
Default constructor, or constructor taking load_min and load_max load factors between which this policy will keep the actual load.
Definition at line 48 of file hash_policy.hpp.
Member Function Documentation
template<bool External_Load_Access, typename Size_Type > std::pair< float, float > __gnu_pbds::hash_load_check_resize_trigger<
External_Load_Access, Size_Type >::get_loads () const [inline]
Returns a pair of the minimal and maximal loads, respectively.
Definition at line 237 of file hash_policy.hpp.
template<bool External_Load_Access, typename Size_Type > void __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
>::notify_cleared () [protected]
Notifies the table was cleared.
Definition at line 207 of file hash_policy.hpp.
template<bool External_Load_Access, typename Size_Type > void __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
>::notify_inserted (size_typenum_entries) [inline], [protected]
Notifies an element was inserted. The total number of entries in the table is num_entries.
Definition at line 110 of file hash_policy.hpp.
template<bool External_Load_Access, typename Size_Type > void __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
>::notify_resized (size_typenew_size) [protected]
Notifies the table was resized as a result of this object's signifying that a resize is needed.
Definition at line 152 of file hash_policy.hpp.
template<bool External_Load_Access, typename Size_Type > void __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
>::set_loads (std::pair< float, float >load_pair)
Sets the loads through a pair of the minimal and maximal loads, respectively.
Definition at line 246 of file hash_policy.hpp.
Author
Generated automatically by Doxygen for libstdc++ from the source code.
libstdc++ __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type >(3cxx)