|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Generic linear hash table. More...
#include <tpl_linHash.H>
Classes | |
| class | Iterator |
Public Types | |
| using | Hash_Fct = std::function< size_t(const Key &)> |
| The hash function type. | |
| using | Hash_Fct_Ptr = size_t(*)(const Key &) |
| using | Bucket = BucketType< Key > |
| The bucket type. | |
| using | Key_Type = Key |
| using | Item_Type = Key |
Public Member Functions | |
| void | set_hash_fct (Hash_Fct fct) noexcept |
| Set the internal hash function. | |
| void | set_hash_fct (Hash_Fct_Ptr fct) noexcept |
| Hash_Fct | get_hash_fct () const noexcept |
| Cmp & | get_compare () noexcept |
| const Cmp & | get_compare () const noexcept |
| float | current_alpha () const noexcept |
| return the current table load | |
| GenLinearHashTable (size_t len=Primes::DefaultPrime, Hash_Fct_Ptr hash_fct=Aleph::dft_hash_ptr_fct< Key >, Cmp cmp=Cmp(), float lower_alpha=hash_default_lower_alpha, float upper_alpha=hash_default_upper_alpha, bool remove_all_buckets=true, bool with_resize=true) | |
| Instantiate a generic linear hash table. | |
| void | swap (GenLinearHashTable &other) noexcept |
| void | empty () noexcept |
| Empty the entire table. | |
| void | clear () noexcept |
| Empties the container. | |
| bool | contains (const Key &key) const noexcept |
| Checks if a key exists in the table. | |
| ~GenLinearHashTable () | |
| Bucket * | search (const Key &key) const noexcept |
| Search for key in the linear hash table. | |
| const size_t & | size () const noexcept |
| Returns the number of elements in the table. | |
| bool | is_empty () const noexcept |
| return true is table is empty | |
| const size_t & | capacity () const noexcept |
| Returns the table capacity. | |
| const size_t & | busy_slots () const noexcept |
| Returns the number of busy slots in the table. | |
| const size_t & | expansions () const noexcept |
| Returns the expansion level performed on the table. | |
| Bucket * | insert (Bucket *bucket) |
| Insert bucket in the table. | |
| Bucket * | search_or_insert (Bucket *bucket) |
| size_t | resize (size_t) noexcept |
| Provided for generic programming compatibility. | |
| Bucket * | remove (Bucket *bucket) noexcept |
| Remove bucket from table. | |
| void | print () |
Public Member Functions inherited from HashStats< HashTbl > | |
| Stats | stats () const |
| Computes statistics about chain length distribution. | |
| void | print_stats (const Stats &stats) const |
| Prints statistics to standard output. | |
| void | set_upper_alpha (float _upper_alpha) |
| Sets the upper load factor threshold. | |
| void | set_lower_alpha (float _lower_alpha) |
| Sets the lower load factor threshold. | |
| constexpr float | get_lower_alpha () const noexcept |
| Returns the lower load factor threshold. | |
| constexpr float | get_upper_alpha () const noexcept |
| Returns the upper load factor threshold. | |
Protected Member Functions | |
| GenLinearHashTable (size_t __len, Hash_Fct __hash_fct, Cmp __cmp, float __lower_alpha, float __upper_alpha, bool __remove_all_buckets, bool) | |
Protected Attributes | |
| Hash_Fct | hash_fct |
| Cmp | cmp |
| float | upper_alpha |
| float | lower_alpha |
| size_t | len |
Private Types | |
| using | BucketList = Dnode< Key > |
| using | BucketItor = typename Dnode< Key >::Iterator |
Private Member Functions | |
| size_t | call_hash_fct (const Key &key) const |
| void | expand () |
| void | contract () noexcept |
| Bucket * | search_in_bucket_list (BucketList *list, const Key &key) const |
| Bucket * | remove_bucket (Bucket *bucket) noexcept |
Static Private Member Functions | |
| static size_t | multiply_by_two (size_t n) noexcept |
| static size_t | divide_by_two (size_t n) noexcept |
Private Attributes | |
| DynArray< BucketList > | table |
| Dlink | entries_list |
| size_t | M |
| size_t | N |
| size_t | busy_slots_counter |
| bool | remove_all_buckets |
| size_t | p |
| size_t | l |
| size_t | MP |
| size_t | MM |
Friends | |
| class | HashStats< GenLinearHashTable< Key, BucketType, Cmp > > |
Generic linear hash table.
Basically, a linear hash table is a hash table with collision resolution by separate chaining but with the difference that the table size increases dynamically to ensure that the load factor, typically called \(\alpha\), is bounded between two lower and upper values, respectively.
Internally, the table uses a dynamic array of type DynArray. This leads to memory savings for table entries that have not been written.
This type is generic and is not intended to be used directly. Instead, use LinearHashTable or LinearHashTableVtl depending on whether you want buckets without or with a virtual destructor.
| Key | the key type by which the table is indexed. |
| BucketType | the bucket type between LinHashBucket or LinHashBucketVtl. |
| Cmp | comparison class between keys. |
Definition at line 158 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Bucket = BucketType<Key> |
The bucket type.
Definition at line 171 of file tpl_linHash.H.
|
private |
Definition at line 181 of file tpl_linHash.H.
|
private |
Definition at line 179 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Hash_Fct = std::function<size_t(const Key &)> |
The hash function type.
Must return pseudo-random positive values, between zero and the largest possible number.
Definition at line 167 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Hash_Fct_Ptr = size_t (*) (const Key &) |
Definition at line 168 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Item_Type = Key |
Definition at line 175 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Key_Type = Key |
Definition at line 173 of file tpl_linHash.H.
|
inlineprotected |
Definition at line 333 of file tpl_linHash.H.
References ah_domain_error_if, ah_length_error_if, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::lower_alpha, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::upper_alpha.
|
inline |
Instantiate a generic linear hash table.
Instantiate a generic linear hash table of size len.
| [in] | len | initial and minimum table size. |
| [in] | hash_fct | hash function. |
| [in] | cmp | comparison functor for keys. |
| [in] | lower_alpha | lower threshold at which the table should contract. |
| [in] | upper_alpha | upper threshold at which the table should expand. |
| [in] | remove_all_buckets | if true, then the table's buckets are freed. Otherwise, they remain intact. By default the value is true. |
| [in] | with_resize | if true, the table will resize automatically based on load factors. |
| length_error | if len is equal or greater than the maximum dimension allowed for a dynamic array. |
| domain_error | if upper_alpha is less than or equal to lower_alpha. |
| bad_alloc | if there is not enough memory |
| overflow_error | if an overflow occurs from DynArray (caused by its internal calculations). |
Definition at line 375 of file tpl_linHash.H.
|
inline |
Definition at line 439 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_all_buckets.
|
inlinenoexcept |
Returns the number of busy slots in the table.
Definition at line 488 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter.
Referenced by print_stats(), TEST(), and TEST().
|
inlineprivate |
Definition at line 221 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert().
|
inlinenoexcept |
Returns the table capacity.
Definition at line 485 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP.
Referenced by print_stats(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlinenoexcept |
Empties the container.
| none |
Definition at line 429 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty().
|
inlinenoexcept |
Checks if a key exists in the table.
| [in] | key | key to search for. |
| none |
Definition at line 437 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search().
|
inlineprivatenoexcept |
Definition at line 276 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::Dlink::concat_list(), Aleph::divide_and_conquer_partition_dp(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::divide_by_two(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::len, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket().
|
inlinenoexcept |
return the current table load
Definition at line 329 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N.
Referenced by TEST().
|
inlinestaticprivatenoexcept |
Definition at line 185 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract().
|
inlinenoexcept |
Empty the entire table.
All buckets are freed and the size is adjusted to the initial one.
Definition at line 408 of file tpl_linHash.H.
References Aleph::divide_and_conquer_partition_dp(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::entries_list, Aleph::Dlink::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::len, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::multiply_by_two(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p, Aleph::Dlink::remove_first_ne(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::~GenLinearHashTable(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::clear(), and TEST().
|
inlineprivate |
Definition at line 228 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::divide_and_conquer_partition_dp(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::multiply_by_two(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::upper_alpha.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert().
|
inlinenoexcept |
Returns the expansion level performed on the table.
Definition at line 491 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l.
Referenced by print_stats(), TEST(), TEST(), and TEST().
|
inlinenoexcept |
Definition at line 326 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp.
|
inlinenoexcept |
Definition at line 324 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp.
Referenced by TEST().
|
inlinenoexcept |
Definition at line 322 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct.
Referenced by TEST().
|
inline |
Insert bucket in the table.
Return bucket if bucket->get_key() is not in the table, nullptr otherwise
Definition at line 495 of file tpl_linHash.H.
References Aleph::Dlink::append(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::entries_list, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::Dnode< T >::get_key(), Aleph::Dlink::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_in_bucket_list(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
Referenced by main(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlinenoexcept |
return true is table is empty
Definition at line 482 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N.
|
inlinestaticprivatenoexcept |
Definition at line 183 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand().
|
inline |
Definition at line 569 of file tpl_linHash.H.
References Aleph::divide_and_conquer_partition_dp(), Aleph::Dlink::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
Referenced by main().
|
inlinenoexcept |
Remove bucket from table.
Warning: it is not verified whether the bucket belongs to the table.
Definition at line 563 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket().
Referenced by main(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlineprivatenoexcept |
Definition at line 541 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::divide_and_conquer_partition_dp(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::next(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search().
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Iterator::del(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove().
|
inlinenoexcept |
Provided for generic programming compatibility.
Definition at line 533 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP.
Referenced by TEST().
|
inlinenoexcept |
Search for key in the linear hash table.
Returns a pointer to the bucket containing key if it is found in the table; nullptr otherwise.
Definition at line 465 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::Dlink::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_in_bucket_list(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contains(), main(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlineprivate |
Definition at line 448 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert().
|
inline |
Definition at line 513 of file tpl_linHash.H.
References Aleph::Dlink::append(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::entries_list, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::Dnode< T >::get_key(), Aleph::Dlink::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_in_bucket_list(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
|
inlinenoexcept |
Set the internal hash function.
Definition at line 312 of file tpl_linHash.H.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct.
Referenced by TEST().
|
inlinenoexcept |
Definition at line 317 of file tpl_linHash.H.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct.
|
inlinenoexcept |
Returns the number of elements in the table.
Definition at line 479 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N.
Referenced by main(), print_stats(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlinenoexcept |
Definition at line 386 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp, Aleph::divide_and_conquer_partition_dp(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::entries_list, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::len, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::lower_alpha, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MM, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::p, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_all_buckets, Aleph::Dlink::swap(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::upper_alpha.
|
friend |
Definition at line 127 of file tpl_linHash.H.
|
private |
Definition at line 199 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
protected |
Definition at line 193 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::get_compare(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::get_compare(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_in_bucket_list(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 188 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
protected |
Definition at line 192 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::get_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::set_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::set_hash_fct(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 211 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expansions(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
mutableprotected |
Definition at line 217 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
protected |
Definition at line 206 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 197 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 213 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 212 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::capacity(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::current_alpha(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::print(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::resize(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 198 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::current_alpha(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::size(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 210 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::call_hash_fct(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 200 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::~GenLinearHashTable(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 187 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::insert(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::print(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::search_or_insert(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
protected |
Definition at line 205 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().