Skip to content

Latest commit

 

History

History
36 lines (29 loc) · 1.34 KB

readme.md

File metadata and controls

36 lines (29 loc) · 1.34 KB

Mostly independent C89 data structure headers that use compile-time polymorphism to generate lightweight and statically type-safe containers. The documented parameters in each project are pre-processor macros. All the public functions are documented in doc/<box>.md.

Design papers

The implementation is fairly standard. Some rationales of the more complex containers documented here.

memory pool A slab-allocator for similar objects
hash table Allocation-conscious chained hash-table
B-tree Practical in-memory B-tree design
trie Compact binary prefix trees

Compatibility

The testing framework in test/ is much less multi-platform then the headers in src/, requiring C13 anonymous unions, assuming a union is in the usual order, uses non-standard pragma (in test_trie.h.) The Makefile provided assumes the gcc suite and uses clang.

License

2016 Neil Edelman, distributed under the terms of the MIT License.