|
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_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. | |
| ~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 156 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Bucket = BucketType<Key> |
The bucket type.
Definition at line 169 of file tpl_linHash.H.
|
private |
Definition at line 179 of file tpl_linHash.H.
|
private |
Definition at line 177 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 165 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Hash_Fct_Ptr = size_t (*) (const Key &) |
Definition at line 166 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Item_Type = Key |
Definition at line 173 of file tpl_linHash.H.
| using Aleph::GenLinearHashTable< Key, BucketType, Cmp >::Key_Type = Key |
Definition at line 171 of file tpl_linHash.H.
|
inlineprotected |
Definition at line 331 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 373 of file tpl_linHash.H.
|
inline |
Definition at line 422 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 471 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter.
|
inlineprivate |
Definition at line 219 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::maps(), 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 468 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP.
|
inlineprivatenoexcept |
Definition at line 274 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::HTList::concat_list(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::divide_by_two(), Aleph::HTList::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::len, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::maps(), 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 327 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 183 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 406 of file tpl_linHash.H.
References 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::maps(), 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(), and TEST().
|
inlineprivate |
Definition at line 226 of file tpl_linHash.H.
References Aleph::DynList< T >::append(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, Aleph::HTList::is_empty(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::M, Aleph::maps(), 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 474 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::l.
|
inlinenoexcept |
Definition at line 324 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp.
|
inlinenoexcept |
Definition at line 322 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp.
Referenced by TEST().
|
inlinenoexcept |
Definition at line 320 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 478 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 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 465 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N.
|
inlinestaticprivatenoexcept |
Definition at line 181 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::empty(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::expand().
|
inline |
Definition at line 552 of file tpl_linHash.H.
References Aleph::Dlink::is_empty(), Aleph::maps(), Aleph::GenLinearHashTable< Key, BucketType, Cmp >::MP, and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::table.
|
inlinenoexcept |
Remove bucket from table.
Warning: it is not verified whether the bucket belongs to the table.
Definition at line 546 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::remove_bucket().
Referenced by TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlineprivatenoexcept |
Definition at line 524 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::contract(), Aleph::maps(), 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 516 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 448 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 >::remove_bucket(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlineprivate |
Definition at line 431 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 496 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 310 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, and Aleph::maps().
Referenced by TEST().
|
inlinenoexcept |
Definition at line 315 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::hash_fct, and Aleph::maps().
|
inlinenoexcept |
Returns the number of elements in the table.
Definition at line 462 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::N.
Referenced by TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
|
inlinenoexcept |
Definition at line 384 of file tpl_linHash.H.
References Aleph::GenLinearHashTable< Key, BucketType, Cmp >::busy_slots_counter, Aleph::GenLinearHashTable< Key, BucketType, Cmp >::cmp, 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::maps(), 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 126 of file tpl_linHash.H.
|
private |
Definition at line 197 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 191 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 186 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 190 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 209 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 215 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 204 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::GenLinearHashTable(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 195 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 211 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 210 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 196 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 208 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 198 of file tpl_linHash.H.
Referenced by Aleph::GenLinearHashTable< Key, BucketType, Cmp >::~GenLinearHashTable(), and Aleph::GenLinearHashTable< Key, BucketType, Cmp >::swap().
|
private |
Definition at line 185 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 203 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().