#include <stdlib.h>
Go to the source code of this file.
Data Structures | |
struct | _htab_entry_struct |
struct | _hashtab_t |
struct | _htab_iterator |
TODO. More... | |
Defines | |
#define | HASH_SIZE 137 |
#define | HASH_NOVAL ((hash_elem)0) |
Typedefs | |
typedef struct _htab_entry_struct * | htab_entry_t |
typedef struct _htab_iterator * | htab_iterator_t |
typedef struct _hashtab_t * | hashtab_t |
typedef void * | hash_elem |
typedef void * | hash_key |
typedef word_t(* | hash_func )(hash_key) |
typedef int(* | compare_func )(hash_key, hash_key) |
Functions | |
word_t | default_hash_func (const char *) |
word_t | hash_str (char *) |
word_t | hash_ptr (void *) |
int | cmp_ptr (void *, void *) |
static __inline int | hi_incr (htab_iterator_t hi) |
TODO. | |
static __inline void | hi_init (htab_iterator_t hi, hashtab_t t) |
TODO. | |
static __inline int | hi_is_valid (htab_iterator_t hi) |
TODO. | |
static __inline hash_key | hi_key (htab_iterator_t hi) |
TODO. | |
static __inline hash_elem | hi_value (htab_iterator_t hi) |
TODO. | |
static __inline htab_entry_t | hi_entry (htab_iterator_t hi) |
TODO. | |
static __inline void | init_hashtab (hashtab_t tab, hash_func hash, compare_func cmp) |
TODO. | |
static __inline void | hash_addelem (hashtab_t tab, hash_key key, hash_elem elem) |
TODO. | |
static __inline htab_entry_t | hash_find_e (hashtab_t tab, hash_key key) |
TODO. | |
static __inline hash_elem | hash_find (hashtab_t tab, hash_key key) |
TODO. | |
static __inline void | hash_delelem (hashtab_t tab, hash_key key) |
TODO. | |
static __inline void | clean_hashtab (hashtab_t tab, void(*callback)(htab_entry_t)) |
TODO. |