A sample resize policy.
This class serves to show the interface a resize policy needs to support.
Defined in: sample_resize_policy.hpp
Type | Definition | Description |
size_type |
size_t, e.g. |
Size type. |
Method | Description |
sample_resize_policy () |
Default constructor. Must be default constructable. |
sample_range_hashing (const sample_resize_policy &other) |
Copy constructor. Must be copy constructable. |
inline void swap (sample_resize_policy &other) |
Swaps content. Must be swappable (if there is such a word). |
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_e) |
Notifies an element was inserted. |
inline void notify_erased (size_type num_e) |
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 to new_size. |
Called to query whether/how to resize.
Method | Description |
inline bool is_resize_needed () const |
Queries whether a resize is needed. |
size_type get_new_size (size_type size, size_type num_used_e) const |
Queries what the new size should be. |