.TH "__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >" 3cxx "Wed Jul 14 2021" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME __gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type > \- A resize policy which delegates operations to size and trigger policies\&. .SH SYNOPSIS .br .PP .PP Inherits \fB__gnu_pbds::hash_exponential_size_policy< Size_Type >\fP, and \fB__gnu_pbds::hash_load_check_resize_trigger< External_Load_Access, Size_Type >\fP\&. .SS "Public Types" .in +1c .ti -1c .RI "enum { \fBexternal_load_access\fP }" .br .ti -1c .RI "enum { \fBexternal_size_access\fP }" .br .ti -1c .RI "typedef Size_Policy \fBsize_policy\fP" .br .ti -1c .RI "typedef Size_Type \fBsize_type\fP" .br .ti -1c .RI "typedef Trigger_Policy \fBtrigger_policy\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBhash_standard_resize_policy\fP ()" .br .RI "Default constructor\&. " .ti -1c .RI "\fBhash_standard_resize_policy\fP (const Size_Policy &r_size_policy)" .br .RI "constructor taking some policies r_size_policy will be copied by the Size_Policy object of this object\&. " .ti -1c .RI "\fBhash_standard_resize_policy\fP (const Size_Policy &r_size_policy, const Trigger_Policy &r_trigger_policy)" .br .RI "constructor taking some policies\&. r_size_policy will be copied by the Size_Policy object of this object\&. r_trigger_policy will be copied by the Trigger_Policy object of this object\&. " .ti -1c .RI "size_type \fBget_actual_size\fP () const" .br .RI "Returns the actual size of the container\&. " .ti -1c .RI "\fBstd::pair\fP< float, float > \fBget_loads\fP () const" .br .RI "Returns a pair of the minimal and maximal loads, respectively\&. " .ti -1c .RI "Size_Policy & \fBget_size_policy\fP ()" .br .RI "Access to the Size_Policy object used\&. " .ti -1c .RI "const Size_Policy & \fBget_size_policy\fP () const" .br .RI "Const access to the Size_Policy object used\&. " .ti -1c .RI "Trigger_Policy & \fBget_trigger_policy\fP ()" .br .RI "Access to the Trigger_Policy object used\&. " .ti -1c .RI "const Trigger_Policy & \fBget_trigger_policy\fP () const" .br .RI "Access to the Trigger_Policy object used\&. " .ti -1c .RI "void \fBresize\fP (size_type suggested_new_size)" .br .RI "Resizes the container to suggested_new_size, a suggested size (the actual size will be determined by the Size_Policy object)\&. " .ti -1c .RI "void \fBset_loads\fP (\fBstd::pair\fP< float, float > load_pair)" .br .RI "Sets the loads through a pair of the minimal and maximal loads, respectively\&. " .ti -1c .RI "void \fBswap\fP (\fBhash_exponential_size_policy\fP< Size_Type > &other)" .br .ti -1c .RI "void \fBswap\fP (\fBhash_load_check_resize_trigger\fP &other)" .br .ti -1c .RI "void \fBswap\fP (\fBhash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type > &other)" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "size_type \fBget_nearest_larger_size\fP (size_type size) const" .br .ti -1c .RI "size_type \fBget_nearest_smaller_size\fP (size_type size) const" .br .ti -1c .RI "size_type \fBget_new_size\fP (size_type size, size_type num_used_e) const" .br .RI "Queries what the new size should be, when the container is resized naturally\&. The current __size of the container is size, and the number of used entries within the container is num_used_e\&. " .ti -1c .RI "bool \fBis_grow_needed\fP (size_type size, size_type num_entries) const" .br .ti -1c .RI "bool \fBis_resize_needed\fP () const" .br .ti -1c .RI "void \fBnotify_cleared\fP ()" .br .ti -1c .RI "void \fBnotify_erase_search_collision\fP ()" .br .ti -1c .RI "void \fBnotify_erase_search_end\fP ()" .br .ti -1c .RI "void \fBnotify_erase_search_start\fP ()" .br .ti -1c .RI "void \fBnotify_erased\fP (size_type num_e)" .br .ti -1c .RI "void \fBnotify_externally_resized\fP (size_type new_size)" .br .ti -1c .RI "void \fBnotify_find_search_collision\fP ()" .br .ti -1c .RI "void \fBnotify_find_search_end\fP ()" .br .ti -1c .RI "void \fBnotify_find_search_start\fP ()" .br .ti -1c .RI "void \fBnotify_insert_search_collision\fP ()" .br .ti -1c .RI "void \fBnotify_insert_search_end\fP ()" .br .ti -1c .RI "void \fBnotify_insert_search_start\fP ()" .br .ti -1c .RI "void \fBnotify_inserted\fP (size_type num_e)" .br .ti -1c .RI "void \fBnotify_resized\fP (size_type new_size)" .br .in -1c .SH "Detailed Description" .PP .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> .br class __gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >" A resize policy which delegates operations to size and trigger policies\&. .PP Definition at line 489 of file hash_policy\&.hpp\&. .SH "Member Enumeration Documentation" .PP .SS "template anonymous enum\fC [inherited]\fP" .PP \fBEnumerator\fP .in +1c .TP \fB\fIexternal_load_access \fP\fP Specifies whether the load factor can be accessed externally\&. The two options have different trade-offs in terms of flexibility, genericity, and encapsulation\&. .PP Definition at line 180 of file hash_policy\&.hpp\&. .SH "Constructor & Destructor Documentation" .PP .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::\fBhash_standard_resize_policy\fP ()" .PP Default constructor\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::\fBhash_standard_resize_policy\fP (const Size_Policy & r_size_policy)" .PP constructor taking some policies r_size_policy will be copied by the Size_Policy object of this object\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::\fBhash_standard_resize_policy\fP (const Size_Policy & r_size_policy, const Trigger_Policy & r_trigger_policy)" .PP constructor taking some policies\&. r_size_policy will be copied by the Size_Policy object of this object\&. r_trigger_policy will be copied by the Trigger_Policy object of this object\&. .SH "Member Function Documentation" .PP .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> size_type \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_actual_size () const\fC [inline]\fP" .PP Returns the actual size of the container\&. .SS "template \fBstd::pair\fP \fB__gnu_pbds::hash_load_check_resize_trigger\fP< External_Load_Access, Size_Type >::get_loads () const\fC [inline]\fP, \fC [inherited]\fP" .PP Returns a pair of the minimal and maximal loads, respectively\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> size_type \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_new_size (size_type size, size_type num_used_e) const\fC [protected]\fP" .PP Queries what the new size should be, when the container is resized naturally\&. The current __size of the container is size, and the number of used entries within the container is num_used_e\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> Size_Policy& \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_size_policy ()" .PP Access to the Size_Policy object used\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> const Size_Policy& \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_size_policy () const" .PP Const access to the Size_Policy object used\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> Trigger_Policy& \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_trigger_policy ()" .PP Access to the Trigger_Policy object used\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> const Trigger_Policy& \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::get_trigger_policy () const" .PP Access to the Trigger_Policy object used\&. .SS "template, typename Trigger_Policy = hash_load_check_resize_trigger<>, bool External_Size_Access = false, typename Size_Type = std::size_t> void \fB__gnu_pbds::hash_standard_resize_policy\fP< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type >::resize (size_type suggested_new_size)" .PP Resizes the container to suggested_new_size, a suggested size (the actual size will be determined by the Size_Policy object)\&. .SS "template void \fB__gnu_pbds::hash_load_check_resize_trigger\fP< External_Load_Access, Size_Type >::set_loads (\fBstd::pair\fP< float, float > load_pair)\fC [inherited]\fP" .PP Sets the loads through a pair of the minimal and maximal loads, respectively\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.