A resize trigger policy based on collision checks. It keeps the simulated load factor lower than some given load factor.
| Parameter | Description | Default Value | 
| External_Load_Access | Specifies whether the load factor can be accessed externally. The two options have different tradeoffs in terms of flexibility, genericity, and encapsulation. | false | 
| 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 | 
| 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. | 
| void swap (cc_hash_max_collision_check_resize_trigger &r_other) | Swaps content. | 
These methods are only available if the external access parameter is set.
| Method | Description | 
| inline float get_load () const | Returns a pair of the minimal and maximal loads, respectively. 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. | 
| 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 is needed. | 
| inline bool is_shrink_needed (size_type size, size_type num_entries) const | Queries whether a shrink is needed. This method is called only if this object indicated is needed. |