X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=libstdc%2B%2B-v3%2Fdoc%2Fhtml%2Fext%2Fpb_ds%2Fhash_load_check_resize_trigger.html;fp=libstdc%2B%2B-v3%2Fdoc%2Fhtml%2Fext%2Fpb_ds%2Fhash_load_check_resize_trigger.html;h=b22b7b5cfddee589513cc93ccdad38cac0d9574d;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=0000000000000000000000000000000000000000;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libstdc++-v3/doc/html/ext/pb_ds/hash_load_check_resize_trigger.html b/libstdc++-v3/doc/html/ext/pb_ds/hash_load_check_resize_trigger.html new file mode 100644 index 00000000..b22b7b5c --- /dev/null +++ b/libstdc++-v3/doc/html/ext/pb_ds/hash_load_check_resize_trigger.html @@ -0,0 +1,583 @@ + + + +
+ + +A resize trigger policy based on a load check. It keeps the + load factor between some load factors load_min and + load_max.
+ +Defined in: hash_policy.hpp
+ +Parameter | + +Description | + +Default Value | +
+ +bool 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. + |
+
+ false | +
+ +typename Size_Type ++ |
+
+
+ Size type. + |
+
+ size_t | +
Type | + +Definition | + +Description | +
+ +size_type ++ |
+
+
+ +Size_Type ++ |
+
+
+ Size type. + |
+
+ +external_load_access ++ |
+
+
+ +External_Load_Access ++ |
+
+
+ Indicates whether loads can be accessed externally + |
+
Method | + +Description | +
+ + 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. + +It is the responsibility of the user to ensure that + load_min is smaller than + load_max. + |
+
+
+void
+ swap
+ (hash_load_check_resize_trigger &other)
+
+ |
+
+
+ Swaps content. + |
+
+ + virtual + ~hash_load_check_resize_trigger + () ++ |
+
+
+ Destructor. + |
+
These methods are only available if the external access + parameter is set.
+ +Method | + +Description | +
+ +inline std::pair<float, float> + get_loads + () const ++ |
+
+
+ Returns a pair of the minimal and maximal loads, + respectively. + +Calling this method will not compile when External_Load_Access + == false. + |
+
+ +void + set_loads + (std::pair<float, float> load_pair) ++ |
+
+
+ Sets the loads through a pair of the minimal and + maximal loads, respectively. + +Calling this method resizes the container, and might + throw an exception. It is the responsibility of the user + to pass appropriate loads to this function. Calling this + method will not compile when External_Load_Access + == false. + |
+
Notifications called during an insert operation.
+ +Method | + +Description | +
+ +inline void + notify_insert_search_start + () ++ |
+
+
+ Notifies a search started. + |
+
+ +inline void + notify_insert_search_collision + () ++ |
+
+
+ Notifies a search encountered a collision. + |
+
+ +inline void + notify_insert_search_end + () ++ |
+
+
+ Notifies a search ended. + |
+
Notifications called during a find operation.
+ +Method | + +Description | +
+ +inline void + notify_find_search_start + () ++ |
+
+
+ Notifies a search started. + |
+
+ +inline void + notify_find_search_collision + () ++ |
+
+
+ Notifies a search encountered a collision. + |
+
+ +inline void + notify_find_search_end + () ++ |
+
+
+ Notifies a search ended. + |
+
Notifications called during an insert operation.
+ +Method | + +Description | +
+ +inline void + notify_erase_search_start + () ++ |
+
+
+ Notifies a search started. + |
+
+ +inline void + notify_erase_search_collision + () ++ |
+
+
+ Notifies a search encountered a collision. + |
+
+ +inline void + notify_erase_search_end + () ++ |
+
+
+ Notifies a search ended. + |
+
Notifications called when the content of the table changes + in a way that can affect the resize policy.
+ +Method | + +Description | +
+ +inline void + notify_inserted + (size_type num_entries) ++ |
+
+
+ Notifies an element was inserted. the total number of + entries in the table is num_entries. + |
+
+ +inline void + notify_erased + (size_type num_entries) ++ |
+
+
+ Notifies an element was erased. + |
+
+ +void + notify_cleared + () ++ |
+
+
+ Notifies the table was cleared. + |
+
Notifications called when the table changes size.
+ +Method | + +Description | +
+ +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. + |
+
+ +void + notify_externally_resized + (size_type new_size) ++ |
+
+
+ Notifies the table was resized externally. + |
+
Called to query whether/how to resize.
+ +Method | + +Description | +
+ +inline bool + is_resize_needed + () const ++ |
+
+
+ Queries whether a resize is needed. + |
+
+ +inline 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 + resize is needed. The actual size of the table is size, and the number of entries in + it is num_entries. + |
+
Method | + +Description | +
+ +virtual void + do_resize + (size_type new_size) ++ |
+
+
+ Resizes to new_size. + |
+