Preprocessor definitions
#define _PD_HT
#define PD_HT_STRINGKEYS 0
#define PD_HT_FATAL 1
#define PD_HT_BADKEY 2
#define PD_HT_NOMEM 3
#define PD_HT_EXISTS 4
#define DEBUGHT( l, s, v )
struct pd_ht_entry
| struct pd_ht_entry |
|
| { |
|
| struct pd_ht_entry* next; |
|
| struct pd_ht_entry* prev; |
|
| struct pd_ht* table; |
|
| int hash; |
|
| void* key; |
|
| void* data; |
|
| } |
|
struct pd_ht
| struct pd_ht |
|
| { |
|
| struct pd_ht_entry** buckets; |
|
| int keylength; |
|
| unsigned int bucketmax; |
|
| int entryct; |
|
| int (*hash)(void* key,int length); |
|
| } |
|
struct pd_ht_search
| struct pd_ht_search |
|
| { |
|
| struct pd_ht* table; |
|
| unsigned int bucket; |
|
| struct pd_ht_entry* entry; |
|
| } |
|
External Variables
pd_ht_debug
extern int pd_ht_debug
pd_ht_errno
extern int pd_ht_errno