diff options
Diffstat (limited to 'src/strmap.h')
-rw-r--r-- | src/strmap.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/strmap.h b/src/strmap.h new file mode 100644 index 0000000..126ebbc --- /dev/null +++ b/src/strmap.h @@ -0,0 +1,31 @@ +#pragma once +#include <stddef.h> +#include <stdbool.h> +#include <stdint.h> + + +typedef struct prne_strmap prne_strmap_t; +typedef struct prne_strmap_tuple prne_strmap_tuple_t; + +struct prne_strmap { + prne_strmap_tuple_t *tbl; + size_t size; +}; + +struct prne_strmap_tuple { + const char *key; + void *val; +}; + +void prne_init_strmap (prne_strmap_t *map); +void prne_free_strmap (prne_strmap_t *map); + +void prne_strmap_clear (prne_strmap_t *map); +const prne_strmap_tuple_t *prne_strmap_insert ( + prne_strmap_t *map, + const char* key, + void *val); +void prne_strmap_erase (prne_strmap_t *map, const char* key); +const prne_strmap_tuple_t *prne_strmap_lookup ( + prne_strmap_t *map, + const char* key); |