1 // A simple linked list based dynamic sized associative map from const char* to
2 // void*. Designed to maximize ease of use instead of performance. Should be
3 // used in benchmarks and tests only, not to be distributed with the cmph
4 // runtime headers.
5 
6 typedef struct __linear_string_map_t lsmap_t;
7 
8 lsmap_t *lsmap_new();
9 void lsmap_append(lsmap_t *lsmap, const char *key, void *value);
10 void* lsmap_search(lsmap_t *lsmap, const char *key);
11 void lsmap_foreach_key(lsmap_t* lsmap, void (*f)(const char*));
12 void lsmap_foreach_value(lsmap_t* lsmap, void (*f)(void*));
13 void lsmap_destroy(lsmap_t* lsmap);
14