Classes | |
| struct | HashData |
Types publics | |
| typedef TraitsType::KeyTypeConstRef | KeyTypeConstRef |
| typedef TraitsType::KeyTypeValue | KeyTypeValue |
Fonctions membres publiques | |
| HashTableBaseT (Integer table_size, bool use_prime) | |
| Crée une table de taille table_size. | |
| bool | hasKey (KeyTypeConstRef id) const |
| true si une valeur avec la clé id est présente | |
| void | clear () |
| Supprime tous les éléments de la table. | |
| void | resize (Integer new_table_size, bool use_prime=false) |
| Redimensionne la table de hachage. | |
| void | rehash () |
| Repositionne les données après changement de valeur des clés. | |
Fonctions membres publiques hérités de Arcane::HashTableBase | |
| HashTableBase (Integer table_size, bool use_prime) | |
| Crée une table de taille table_size. | |
| Integer | nearestPrimeNumber (Integer n) |
| Retourne le nombre premier le plus proche de n par excès. Le nombre premier le plus proche et supérieur à n est renvoyé en utilisant une table de nombre premier déterminée à l'avance. | |
| Integer | count () const |
| Nombre d'éléments dans la table. | |
Fonctions membres protégées | |
| Integer | _hash (KeyTypeConstRef id) const |
| HashData * | _baseLookupBucket (Integer bucket, KeyTypeConstRef id) const |
| HashData * | _baseRemoveBucket (Integer bucket, KeyTypeConstRef id) |
| HashData * | _baseLookup (KeyTypeConstRef id) const |
| HashData * | _baseRemove (KeyTypeConstRef id) |
| void | _baseAdd (Integer bucket, KeyTypeConstRef id, HashData *hd) |
Fonctions membres protégées hérités de Arcane::HashTableBase | |
| void _throwNotFound | ARCANE_NORETURN () const |
Attributs protégés | |
| UniqueArray< HashData * > | m_buckets |
Attributs protégés hérités de Arcane::HashTableBase | |
| Integer | m_count |
| Nombre d'éléments. | |
| Integer | m_nb_bucket |
| Nombre de buckets. | |
Définition à la ligne 97 du fichier HashTable.h.
| typedef TraitsType::KeyTypeConstRef Arcane::HashTableBaseT< KeyType, TraitsType >::KeyTypeConstRef |
Définition à la ligne 102 du fichier HashTable.h.
| typedef TraitsType::KeyTypeValue Arcane::HashTableBaseT< KeyType, TraitsType >::KeyTypeValue |
Définition à la ligne 103 du fichier HashTable.h.
|
inline |
Crée une table de taille table_size.
Si use_prime est vrai, utilise la fonction nearestPrimeNumber() pour avoir une taille de taille qui est un nombre premier.
Définition à la ligne 144 du fichier HashTable.h.
Références Arcane::HashTableBase::HashTableBase(), et Arcane::HashTableBase::m_nb_bucket.
|
inlineprotected |
Définition à la ligne 250 du fichier HashTable.h.
|
inlineprotected |
Définition à la ligne 242 du fichier HashTable.h.
|
inlineprotected |
Définition à la ligne 214 du fichier HashTable.h.
|
inlineprotected |
Définition à la ligne 246 du fichier HashTable.h.
|
inlineprotected |
Définition à la ligne 222 du fichier HashTable.h.
|
inlineprotected |
Définition à la ligne 210 du fichier HashTable.h.
|
inline |
Supprime tous les éléments de la table.
Définition à la ligne 165 du fichier HashTable.h.
Références Arcane::HashTableBase::m_count.
Référencé par resize().
|
inline |
true si une valeur avec la clé id est présente
Définition à la ligne 154 du fichier HashTable.h.
|
inline |
Repositionne les données après changement de valeur des clés.
Définition à la ligne 193 du fichier HashTable.h.
Références Arcane::HashTableBaseT< KeyType, TraitsType >::HashData::m_key, et Arcane::AbstractArray< T >::size().
|
inline |
Redimensionne la table de hachage.
Définition à la ligne 172 du fichier HashTable.h.
Références clear(), Arcane::HashTableBase::m_nb_bucket, Arcane::HashTableBase::nearestPrimeNumber(), et Arcane::AbstractArray< T >::size().
|
protected |
Définition à la ligne 261 du fichier HashTable.h.