__GNU_PBDS::HASH_STANDARD_RESIZE_POLICY(3cxx)
β¨ NAME β¨
okay so bestie, this is the 3cxx manual page for __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. slay π
π¦ SYNOPSIS π¦
#include <hash_policy.hpp>
Inherits __gnu_pbds::hash_exponential_size_policy< Size_Type >, and
__gnu_pbds::hash_load_check_resize_trigger< External_Load_Access,
Size_Type >.
π Public Types π
enum { external_load_access }β the external-load-access enum vibe β¨enum { external_size_access }β the external-size-access enum vibe β¨typedef Size_Policy size_policyβ this is theSize_Policytype, periodttypedef Size_Type size_typeβ this is theSize_Typetype, no captypedef Trigger_Policy trigger_policyβ this is theTrigger_Policytype, iconic
π Public Member Functions π
hash_standard_resize_policy ()β default constructor π«Άhash_standard_resize_policy (const Size_Policy &r_size_policy)β constructor taking some policies;r_size_policywill be copied by theSize_Policyobject of this object.hash_standard_resize_policy (const Size_Policy &r_size_policy, const Trigger_Policy &r_trigger_policy)β constructor taking some policies;r_size_policywill be copied by theSize_Policyobject of this object, andr_trigger_policywill be copied by theTrigger_Policyobject of this object.size_type get_actual_size () constβ returns the actual size of the container β¨std::pair< float, float > get_loads () constβ returns a pair of the minimal and maximal loads, respectively.Size_Policy & get_size_policy ()β access to theSize_Policyobject used.const Size_Policy & get_size_policy () constβ const access to theSize_Policyobject used.Trigger_Policy & get_trigger_policy ()β access to theTrigger_Policyobject used.const Trigger_Policy & get_trigger_policy () constβ access to theTrigger_Policyobject used.void resize (size_type suggested_new_size)β resizes the container tosuggested_new_size, a suggested size (the actual size will be determined by theSize_Policyobject).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_exponential_size_policy< Size_Type > &other)β the original has no extra description for this one, just the signature π«Άvoid swap (hash_load_check_resize_trigger &other)β again, no extra description in the source, just the signature πvoid swap (hash_standard_resize_policy< Size_Policy, Trigger_Policy, External_Size_Access, Size_Type > &other)β same vibe, signature only β¨
πΈ Protected Member Functions πΈ
size_type get_nearest_larger_size (size_type size) constsize_type get_nearest_smaller_size (size_type size) constsize_type get_new_size (size_type size, size_type num_used_e) constβ queries what the new size should be, when the container is resized naturally. The current__sizeof the container issize, and the number of used entries within the container isnum_used_e.bool is_grow_needed (size_type size, size_type num_entries) constbool is_resize_needed () constvoid notify_cleared ()void notify_erase_search_collision ()void notify_erase_search_end ()void notify_erase_search_start ()void notify_erased (size_type num_e)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_e)void notify_resized (size_type new_size)
π DETAILED DESCRIPTION π
hereβs the exact template lineup, bestie:
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
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.
in human words: itβs a resize policy which delegates operations to size and trigger policies. thatβs literally the official vibe ππ
π MEMBER ENUMERATION DOCUMENTATION π
anonymous enum [inherited]
template<bool External_Load_Access = false, typename Size_Type =
std::size_t> anonymous enum [inherited]
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 π
hash_standard_resize_policy ()
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy,
External_Size_Access, Size_Type >::hash_standard_resize_policy ()
default constructor π«Ά
hash_standard_resize_policy (const Size_Policy & r_size_policy)
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy,
External_Size_Access, Size_Type >::hash_standard_resize_policy (const
Size_Policy & r_size_policy)
constructor taking some policies; r_size_policy will be copied by the Size_Policy object of this object.
hash_standard_resize_policy (const Size_Policy & r_size_policy, const Trigger_Policy & r_trigger_policy)
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy,
External_Size_Access, Size_Type >::hash_standard_resize_policy (const
Size_Policy & r_size_policy, const Trigger_Policy & r_trigger_policy)
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.
π₯ MEMBER FUNCTION DOCUMENTATION π₯
get_actual_size () const [inline]
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
size_type __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_actual_size ()
const [inline]
returns the actual size of the container β¨
get_loads () const [inline], [inherited]
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], [inherited]
returns a pair of the minimal and maximal loads, respectively.
get_new_size (size_type size, size_type num_used_e) const [protected]
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
size_type __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_new_size
(size_type size, size_type num_used_e) const [protected]
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.
get_size_policy ()
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
Size_Policy & __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_size_policy ()
access to the Size_Policy object used.
get_size_policy () const
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t> const
Size_Policy & __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_size_policy ()
const
const access to the Size_Policy object used.
get_trigger_policy ()
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t>
Trigger_Policy & __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_trigger_policy ()
access to the Trigger_Policy object used.
get_trigger_policy () const
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t> const
Trigger_Policy & __gnu_pbds::hash_standard_resize_policy< Size_Policy,
Trigger_Policy, External_Size_Access, Size_Type >::get_trigger_policy ()
const
access to the Trigger_Policy object used.
resize (size_type suggested_new_size)
template<typename Size_Policy = hash_exponential_size_policy<>, typename
Trigger_Policy = hash_load_check_resize_trigger<>, bool
External_Size_Access = false, typename Size_Type = std::size_t> void
__gnu_pbds::hash_standard_resize_policy< Size_Policy, Trigger_Policy,
External_Size_Access, Size_Type >::resize (size_type suggested_new_size)
resizes the container to suggested_new_size, a suggested size (the actual size will be determined by the Size_Policy object).
set_loads (std::pair< float, float > load_pair) [inherited]
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) [inherited]
sets the loads through a pair of the minimal and maximal loads, respectively.
π AUTHOR π
Generated automatically by Doxygen for libstdc++ from the source code. doxygen ate and left no crumbs π«Ά
xoxo bestie π β source/version: libstdc++; manual: 3cxx. mwah! π§ββοΈπ
π¦ where this page comes from
- debian trixie: libstdc++-12-doc 12.4.0-5
- debian trixie: libstdc++-13-doc 13.3.0-16
- debian trixie: libstdc++-14-doc 14.2.0-19
- ubuntu noble: libstdc++-10-doc 10.5.0-4ubuntu2
- ubuntu noble: libstdc++-10-doc 10.5.0-4ubuntu2.1
- ubuntu noble: libstdc++-11-doc 11.4.0-9ubuntu1
- ubuntu noble: libstdc++-11-doc 11.5.0-1ubuntu1~24.04.1
- ubuntu noble: libstdc++-12-doc 12.3.0-17ubuntu1
- ubuntu noble: libstdc++-12-doc 12.4.0-2ubuntu1~24.04.1
- ubuntu noble: libstdc++-13-doc 13.2.0-23ubuntu4
- ubuntu noble: libstdc++-13-doc 13.3.0-6ubuntu2~24.04.1
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- ubuntu noble: libstdc++-14-doc 14.2.0-4ubuntu2~24.04.1
- ubuntu questing: libstdc++-11-doc 11.5.0-7ubuntu1
- ubuntu questing: libstdc++-11-doc 11.5.0-7ubuntu1.1
- ubuntu questing: libstdc++-12-doc 12.5.0-6ubuntu1
- ubuntu questing: libstdc++-13-doc 13.4.0-4ubuntu1
- ubuntu questing: libstdc++-14-doc 14.3.0-8ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms