Mercurial > repo
view src/ploki/hash.h @ 6934:04f9cc15cad5
<hppavilion[1]> le/rn last-class function/A last-class function is a function that cannot be passed as an argument, accept a function as an argument, be returned by a function, return a function, set to a variable other than its initial name, or be called
author | HackBot |
---|---|
date | Tue, 23 Feb 2016 00:02:33 +0000 |
parents | ac0403686959 |
children |
line wrap: on
line source
#ifndef HASH_H_ #define HASH_H_ #include <stddef.h> typedef struct { size_t entries, size, newsize; size_t brk; size_t seed; size_t iter; struct h_node *iterptr; struct h_node **table; size_t (*hash)(const void *, size_t); int (*cmp)(const void *, const void *); void (*delk)(void *); void (*delv)(void *); } Hash; enum { H_OK, H_EXIST, H_NOENT }; void h_init( Hash *, size_t (*)(const void *, size_t), int (*)(const void *, const void *), void (*)(void *), void (*)(void *) ); void h_end(Hash *); int h_get(Hash *, const void *, void **); int h_del(Hash *, const void *); #if 0 void h_push(Hash *, void *, void *); #endif int h_put(Hash *, void *, void *, int); void h_reset(Hash *); int h_nextkv(Hash *, void **, void **); #if 0 size_t h_entries(const Hash *); #define h_entries(h) ((h)->entries + 0) #endif #endif /* HASH_H_ */