#include <HashTable.hpp>
Public Types | |
typedef HashBucket< _Key, _Value > | bucket_type |
typedef _Key | key_type |
typedef _Value | value_type |
typedef _HashFunction | hash_type |
typedef _Comparator | compare_type |
typedef HashTableIterator< _Key, _Value, _Comparator > | iterator |
Public Member Functions | |
HashTable (size_t size=16384, indri::utility::RegionAllocator *allocator=0) | |
~HashTable () | |
_Value * | find (const _Key &k) const |
_Value * | insert (const _Key &k) |
_Value * | insert (const _Key &k, const _Value &v) |
void | remove (const _Key &k) |
void | clear () |
const iterator & | end () |
iterator | begin () |
size_t | size () |
Private Member Functions | |
void | _deleteBucket (bucket_type *b) |
bucket_type * | _newBucket (const _Key &k, bucket_type *p) |
bucket_type * | _newBucket (const _Key &k, const _Value &v, bucket_type *p) |
bucket_type ** | _parentBucket (const _Key &k) const |
Private Attributes | |
indri::utility::RegionAllocator * | _allocator |
bucket_type ** | _table |
hash_type | _hash |
compare_type | _compare |
size_t | _buckets |
iterator | _end |
size_t | _count |
Friends | |
class | HashTableIterator< _Key, _Value, _Comparator > |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|