Generic C Hash Map for Embedded Systems
This library is an implementation of a hash map in C that maps integers to void pointers. The map is initialized with a fixed size and load factor, and memory is allocated on the heap all at once. There are no dependencies besides the BSD queue.h, which is included in most systems by default.
This library has a test suite built with the
check C library. Run the tests
$ make test
#include "emhashmap.h" #define MAX_CAPACITY 64 HashMap map = emhashmap_create(64); int key = 42; char* value = "foo"; emhashmap_put(&map, key, (void*)value); bool contains = emhashmap_contains(list, key); // contains == true int size = emhashmap_size(&map); // size == 1 emhashmap_remove(&map, key); emhashmap_is_empty(&map); // == true emhashmap_destroy(&map);
This library is licensed under the BSD license and is Copyright 2014, Ford Motor Company
- Chris Peplin, email@example.com