Mercurial > repo
view src/ploki/hash.h @ 10120:631b602f7856
<fizzie> ` (echo \'#!/bin/bash\'; echo \'icao="$(airport "$*" | sed -e "s/.*, //;s/)//" | head -n 1)"\'; echo \'echo lambdabot: @metar "${icao:-$1}"\') > bin/metar
author | HackBot |
---|---|
date | Wed, 11 Jan 2017 12:54:08 +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_ */