|
LMMS
|
#include <assert.h>#include <stdint.h>#include <stdlib.h>#include <string.h>#include "zix/hash.h"Go to the source code of this file.
Classes | |
| struct | ZixHashEntry |
| struct | ZixHashImpl |
Typedefs | |
| typedef struct ZixHashEntry | ZixHashEntry |
Functions | |
| static void * | zix_hash_value (ZixHashEntry *entry) |
| ZIX_API ZixHash * | zix_hash_new (ZixHashFunc hash_func, ZixEqualFunc equal_func, size_t value_size) |
| ZIX_API void | zix_hash_free (ZixHash *hash) |
| ZIX_API size_t | zix_hash_size (const ZixHash *hash) |
| static void | insert_entry (ZixHashEntry **bucket, ZixHashEntry *entry) |
| static ZixStatus | rehash (ZixHash *hash, unsigned new_n_buckets) |
| static ZixHashEntry * | find_entry (const ZixHash *hash, const void *key, const unsigned h, const unsigned h_nomod) |
| ZIX_API const void * | zix_hash_find (const ZixHash *hash, const void *value) |
| ZIX_API ZixStatus | zix_hash_insert (ZixHash *hash, const void *value, const void **inserted) |
| ZIX_API ZixStatus | zix_hash_remove (ZixHash *hash, const void *value) |
| ZIX_API void | zix_hash_foreach (ZixHash *hash, ZixHashVisitFunc f, void *user_data) |
Variables | |
| static const unsigned | sizes [] |
| typedef struct ZixHashEntry ZixHashEntry |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
static |
Primes, each slightly less than twice its predecessor, and as far away from powers of two as possible.