Elm
2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
|
#include <elm/data/Manager.h>
Public Types | |
typedef H | hash_t |
typedef A | alloc_t |
Public Member Functions | |
HashManager (void) | |
HashManager (const H &h, A &a=DefaultAllocator::DEFAULT) | |
bool | isEqual (const K &k1, const K &k2) const |
t::hash | computeHash (const K &k) const |
template<class T > | |
void * | allocate () |
void | free (void *p) |
Static Public Member Functions | |
static HashManager< K, H, A > & | def () |
Public Attributes | |
H | hash |
A & | alloc |
This class is used to control the work of container classes (see Data Structures) supporting lookup and sorting based on key hashing. It embeds two control objects:
It is easily customized by changing the type parameters and by passing objects to the constructor.
K | Type of data keys. |
H | Hash class (default to HashKey<K>). |
A | Allocation class (default to DefaultAllocator). |
typedef A alloc_t |
typedef H hash_t |
|
inline |
|
inline |
|
inline |
References HashManager< K, H, A >::alloc.
|
inline |
References HashManager< K, H, A >::hash.
|
inlinestatic |
References HashManager< K, H, A >::alloc, and elm::io::p().
|
inline |
References HashManager< K, H, A >::hash.
A& alloc |
Referenced by HashManager< K, H, A >::allocate(), and HashManager< K, H, A >::free().
H hash |
Referenced by HashManager< K, H, A >::computeHash(), and HashManager< K, H, A >::isEqual().