#include <MT_hashtable.h>
Public Member Functions | |
IMTHashTable (int size, bool(*gc_func)(data_t)=NULL, void(*pre_gc_func)(void)=NULL) | |
~IMTHashTable () | |
int | getBucketNum () |
int | getCurSize () |
int | bucket_id (key_t key, int a_bucket_num) |
int | bucket_id (key_t key) |
void | reset () |
data_t | insert_entry (key_t key, data_t data) |
data_t | remove_entry (key_t key) |
data_t | lookup_entry (key_t key) |
data_t | first_entry (int bucket_id, HashTableIteratorState< key_t, data_t > *s) |
data_t | remove_entry (HashTableIteratorState< key_t, data_t > *s) |
void | GC (void) |
void | resize (int size) |
Static Public Member Functions | |
static data_t | next_entry (HashTableIteratorState< key_t, data_t > *s) |
static data_t | cur_entry (HashTableIteratorState< key_t, data_t > *s) |
Definition at line 79 of file MT_hashtable.h.
IMTHashTable< key_t, data_t >::IMTHashTable | ( | int | size, | |
bool(*)(data_t) | gc_func = NULL , |
|||
void(*)(void) | pre_gc_func = NULL | |||
) | [inline] |
Definition at line 81 of file MT_hashtable.h.
IMTHashTable< key_t, data_t >::~IMTHashTable | ( | ) | [inline] |
Definition at line 89 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::reset().
int IMTHashTable< key_t, data_t >::bucket_id | ( | key_t | key, | |
int | a_bucket_num | |||
) | [inline] |
int IMTHashTable< key_t, data_t >::bucket_id | ( | key_t | key | ) | [inline] |
Definition at line 107 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::bucket_id().
data_t IMTHashTable< key_t, data_t >::cur_entry | ( | HashTableIteratorState< key_t, data_t > * | s | ) | [inline, static] |
Definition at line 295 of file MT_hashtable.h.
References HashTableIteratorState< key_t, data_t >::ppcur.
data_t IMTHashTable< key_t, data_t >::first_entry | ( | int | bucket_id, | |
HashTableIteratorState< key_t, data_t > * | s | |||
) | [inline] |
Definition at line 274 of file MT_hashtable.h.
References HashTableIteratorState< key_t, data_t >::cur_buck, and HashTableIteratorState< key_t, data_t >::ppcur.
void IMTHashTable< key_t, data_t >::GC | ( | void | ) | [inline] |
Definition at line 136 of file MT_hashtable.h.
References HashTableEntry< key_t, data_t >::data, and HashTableEntry< key_t, data_t >::next.
Referenced by IMTHashTable< key_t, data_t >::insert_entry().
int IMTHashTable< key_t, data_t >::getBucketNum | ( | ) | [inline] |
Definition at line 93 of file MT_hashtable.h.
int IMTHashTable< key_t, data_t >::getCurSize | ( | ) | [inline] |
Definition at line 97 of file MT_hashtable.h.
data_t IMTHashTable< key_t, data_t >::insert_entry | ( | key_t | key, | |
data_t | data | |||
) | [inline] |
Definition at line 202 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::bucket_id(), HashTableEntry< key_t, data_t >::data, IMTHashTable< key_t, data_t >::GC(), HashTableEntry< key_t, data_t >::key, MT_HASHTABLE_MAX_CHAIN_AVG_LEN, HashTableEntry< key_t, data_t >::next, and IMTHashTable< key_t, data_t >::resize().
data_t IMTHashTable< key_t, data_t >::lookup_entry | ( | key_t | key | ) | [inline] |
Definition at line 258 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::bucket_id(), HashTableEntry< key_t, data_t >::data, HashTableEntry< key_t, data_t >::key, and HashTableEntry< key_t, data_t >::next.
data_t IMTHashTable< key_t, data_t >::next_entry | ( | HashTableIteratorState< key_t, data_t > * | s | ) | [inline, static] |
Definition at line 284 of file MT_hashtable.h.
References HashTableIteratorState< key_t, data_t >::ppcur.
data_t IMTHashTable< key_t, data_t >::remove_entry | ( | HashTableIteratorState< key_t, data_t > * | s | ) | [inline] |
Definition at line 303 of file MT_hashtable.h.
References HashTableEntry< key_t, data_t >::data, HashTableEntry< key_t, data_t >::next, and HashTableIteratorState< key_t, data_t >::ppcur.
data_t IMTHashTable< key_t, data_t >::remove_entry | ( | key_t | key | ) | [inline] |
Definition at line 235 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::bucket_id(), HashTableEntry< key_t, data_t >::data, HashTableEntry< key_t, data_t >::key, and HashTableEntry< key_t, data_t >::next.
void IMTHashTable< key_t, data_t >::reset | ( | ) | [inline] |
Definition at line 112 of file MT_hashtable.h.
References HashTableEntry< key_t, data_t >::next.
Referenced by IMTHashTable< key_t, data_t >::~IMTHashTable().
void IMTHashTable< key_t, data_t >::resize | ( | int | size | ) | [inline] |
Definition at line 163 of file MT_hashtable.h.
References IMTHashTable< key_t, data_t >::bucket_id(), HashTableEntry< key_t, data_t >::key, and HashTableEntry< key_t, data_t >::next.
Referenced by IMTHashTable< key_t, data_t >::insert_entry().