Provided by: libstdc++-10-doc_10.5.0-4ubuntu2_all bug

NAME

       __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.

SYNOPSIS

       #include <hash_policy.hpp>

       Inherits __gnu_pbds::detail::hash_load_check_resize_trigger_size_base< Size_Type, Hold_Size >.

       Inherited by __gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access,
       Size_Type >.

   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)
           Default constructor, or constructor taking load_min and load_max load factors between which this
           policy will keep the actual load.
       std::pair< float, float > get_loads () const
           Returns a pair of the minimal and maximal loads, respectively.
       void set_loads (std::pair< float, float > load_pair)
           Sets the loads through a pair of the minimal and maximal loads, respectively.
       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 ()
           Notifies the table was 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)
           Notifies an element was inserted. The total number of entries in the table is num_entries.
       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::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.

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.

Constructor & Destructor Documentation

   template<bool External_Load_Access = false, typename Size_Type  = std::size_t>
       __gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type
       >::hash_load_check_resize_trigger (float load_min = 0.125, float load_max = 0.5)
       Default constructor, or constructor taking load_min and load_max load factors between which this policy
       will keep the actual load.

Member Function Documentation

   template<bool External_Load_Access = false, typename Size_Type  = std::size_t> 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.

   template<bool External_Load_Access = false, typename Size_Type  = std::size_t> void
       __gnu_pbds::hash_load_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::hash_load_check_resize_trigger< External_Load_Access, Size_Type >::notify_inserted (size_type
       num_entries) [inline],  [protected]
       Notifies an element was inserted. The total number of entries in the table is num_entries.

   template<bool External_Load_Access = false, typename Size_Type  = std::size_t> void
       __gnu_pbds::hash_load_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::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.

Author

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

                             __gnu_pbds::hash_load_checktresize_trigger< External_Load_Access, Size_Type >(3cxx)