#include <template_hash_array.h>
◆ adapter_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ allocator_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ bucket_const_iter
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ bucket_iter
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ bucket_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ comptime_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ const_iterator_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ hash_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ iterator_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ key_id_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ key_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ value_t
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ template_hash_array() [1/4]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ template_hash_array() [2/4]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Constructor with bucket count.
- Parameters
-
bucket_count | Number of buckets. |
◆ template_hash_array() [3/4]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
koutil::container::template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator >::template_hash_array |
( |
const template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator > & | other | ) |
|
|
inline |
Copy constructor.
- Parameters
-
◆ template_hash_array() [4/4]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
koutil::container::template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator >::template_hash_array |
( |
template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator > && | other | ) |
|
|
inline |
Move constructor.
- Parameters
-
◆ ~template_hash_array()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ begin() [1/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get an iterator to the beginning of the hash_array.
- Returns
- iterator_t Iterator to the beginning.
◆ begin() [2/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get a constant iterator to the beginning of the hash_array.
- Returns
- const_iterator_t Constant iterator to the beginning.
◆ bucket_count()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Returns the number of buckets.
- Returns
- std::size_t Number of buckets.
◆ cbegin()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get a constant iterator to the beginning of the hash_array.
- Returns
- iterator_t Constant iterator to the beginning.
◆ cend()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get a constant iterator to the end of the hash_array.
- Returns
- const_iterator_t Constant iterator to the end.
◆ clear()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ clear_all_buckets()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ destroy()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ empty()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Check if the hash_array is empty.
- Returns
- bool True if empty, false otherwise.
◆ end() [1/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get an iterator to the end of the hash_array.
- Returns
- iterator_t Iterator to the end.
◆ end() [2/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get a constant iterator to the end of the hash_array.
- Returns
- const_iterator_t Constant iterator to the end.
◆ erase()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Erases an element from the hash table.
- Template Parameters
-
- Parameters
-
key | Key of the element to erase. |
adapter | Key adapter for comparison. |
- Returns
- true If the element was successfully erased.
-
false If the element was not found.
◆ find() [1/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Finds an element in the hash table.
- Template Parameters
-
- Parameters
-
key | Key of the element to find. |
adapter | Key adapter for comparison. |
- Returns
- iterator_t The iterator with found element, if not found end() is returned.
◆ find() [2/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Finds an element in the hash table.
- Template Parameters
-
- Parameters
-
key | Key of the element to find. |
adapter | Key adapter for comparison. |
- Returns
- const_iterator_t The iterator with found element, if not found end() is returned.
◆ find_bucket_item() [1/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ find_bucket_item() [2/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ get_bucket()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ hash_key()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ insert()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ max_load_factor()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Returns the maximum load factor.
- Returns
- float Maximum load factor.
◆ operator=() [1/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
template_hash_array & koutil::container::template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator >::operator= |
( |
const template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator > & | other | ) |
|
|
inline |
◆ operator=() [2/2]
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
template_hash_array & koutil::container::template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator >::operator= |
( |
template_hash_array< Key, KeyID, ComptimeData, KeyAdapter, Hash, Bucket, Allocator > && | other | ) |
|
|
inline |
◆ rehash_if_needed()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ remove()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ set()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ set_max_load_factor()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Sets a new maximum load factor.
- Parameters
-
factor | New maximum load factor. |
◆ size()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Get the number of elements in the hash_array.
- Returns
- std::size_t Number of elements.
◆ try_insert()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Try to insert a key and key ID into the hash_array.
- Template Parameters
-
- Parameters
-
key | The key to insert. |
key_id | The key ID to insert. |
- Returns
- bool True if the key is not inside hash_array, false otherwise.
◆ try_set()
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
Try to set new key ID.
- Template Parameters
-
- Parameters
-
key | The key. |
new_key_id | The new key ID. |
- Returns
- bool True if the key ID was changed, false otherwise.
◆ m_buckets
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ m_buckets_count
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ m_max_load_factor
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
◆ m_size
template<typename Key , typename KeyID , typename ComptimeData , is_template_key_adapter< Key, KeyID, ComptimeData > KeyAdapter, is_template_hash< Key, ComptimeData > Hash, is_bucket< KeyID > Bucket = std::vector<std::pair<std::size_t, KeyID>>, is_allocator< Bucket > Allocator = std::allocator<Bucket>>
The documentation for this class was generated from the following file: