Provided by: libstdc++-9-doc_9.5.0-3ubuntu1_all
NAME
__gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type > - A resize trigger policy based on collision checks. It keeps the simulated load factor lower than some given load factor.
SYNOPSIS
#include <hash_policy.hpp> Public Types enum { external_load_access } typedef Size_Type size_type Public Member Functions cc_hash_max_collision_check_resize_trigger (float load=0.5) Default constructor, or constructor taking load, a __load factor which it will attempt to maintain. float get_load () const Returns the current load. void set_load (float load) Sets the load; does not resize the container. void swap (cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type > &other) Protected Member Functions bool is_grow_needed (size_type size, size_type num_entries) const Queries whether a grow is needed. This method is called only if this object indicated is needed. bool is_resize_needed () const Queries whether a resize is needed. void notify_cleared () Notifies the table was cleared. void notify_erase_search_collision () Notifies a search encountered a collision. void notify_erase_search_end () Notifies a search ended. void notify_erase_search_start () Notifies an erase search started. void notify_erased (size_type num_entries) Notifies an element was erased. void notify_externally_resized (size_type new_size) Notifies the table was resized externally. void notify_find_search_collision () Notifies a search encountered a collision. void notify_find_search_end () Notifies a search ended. void notify_find_search_start () Notifies a find search started. void notify_insert_search_collision () Notifies a search encountered a collision. void notify_insert_search_end () Notifies a search ended. void notify_insert_search_start () Notifies an insert search started. void notify_inserted (size_type num_entries) Notifies an element was inserted. void notify_resized (size_type new_size) Notifies the table was resized as a result of this object's signifying that a resize is needed.
Detailed Description
template<bool External_Load_Access = false, typename Size_Type = std::size_t> class __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >"A resize trigger policy based on collision checks. It keeps the simulated load factor lower than some given load factor. Definition at line 293 of file hash_policy.hpp.
Member Typedef Documentation
template<bool External_Load_Access = false, typename Size_Type = std::size_t> typedef Size_Type __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::size_type Definition at line 296 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 298 of file hash_policy.hpp.
Constructor & Destructor Documentation
template<bool External_Load_Access = false, typename Size_Type = std::size_t> __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::cc_hash_max_collision_check_resize_trigger (float load = 0.5) Default constructor, or constructor taking load, a __load factor which it will attempt to maintain.
Member Function Documentation
template<bool External_Load_Access = false, typename Size_Type = std::size_t> float __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::get_load () const [inline] Returns the current load. template<bool External_Load_Access = false, typename Size_Type = std::size_t> bool __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::is_grow_needed (size_type size, size_type num_entries) const [inline], [protected] Queries whether a grow is needed. This method is called only if this object indicated is needed. template<bool External_Load_Access = false, typename Size_Type = std::size_t> bool __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::is_resize_needed () const [inline], [protected] Queries whether a resize is needed. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_cleared () [protected] Notifies the table was cleared. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_erase_search_collision () [inline], [protected] Notifies a search encountered a collision. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_erase_search_end () [inline], [protected] Notifies a search ended. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_erase_search_start () [inline], [protected] Notifies an erase search started. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_erased (size_type num_entries) [inline], [protected] Notifies an element was erased. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_externally_resized (size_type new_size) [protected] Notifies the table was resized externally. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_find_search_collision () [inline], [protected] Notifies a search encountered a collision. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_find_search_end () [inline], [protected] Notifies a search ended. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_find_search_start () [inline], [protected] Notifies a find search started. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_insert_search_collision () [inline], [protected] Notifies a search encountered a collision. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_insert_search_end () [inline], [protected] Notifies a search ended. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_insert_search_start () [inline], [protected] Notifies an insert search started. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_inserted (size_type num_entries) [inline], [protected] Notifies an element was inserted. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::notify_resized (size_type new_size) [protected] Notifies the table was resized as a result of this object's signifying that a resize is needed. template<bool External_Load_Access = false, typename Size_Type = std::size_t> void __gnu_pbds::cc_hash_max_collision_check_resize_trigger< External_Load_Access, Size_Type >::set_load (float load) Sets the load; does not resize the container.
Author
Generated automatically by Doxygen for libstdc++ from the source code. libsgnu+pbds::cc_hash_max_collision_checkTresize_trigger< External_Load_Access, Size_Type >(3cxx)