summaryrefslogtreecommitdiffstats
path: root/include/zix/btree.h
AgeCommit message (Collapse)AuthorFilesLines
2021-09-14Make ZixAllocator a single flat structDavid Robillard1-1/+1
I can never decide between these two patterns for polymorphic objects in C, but this one seems more appropriate here since it's more conducive to inheritance.
2021-09-11Fix zix_btree_free() nullable annotationDavid Robillard1-1/+1
2021-09-10Adopt REUSE machine-readable licensing standardDavid Robillard1-15/+2
2021-09-10Add custom allocator supportDavid Robillard1-1/+4
2021-09-10Add nullability annotationsDavid Robillard1-24/+31
This allows clang to issue warnings at compile time when null is passed to a non-null parameter. For public entry points, also add assertions to catch such issues when the compiler does not support this.
2021-09-10Move attribute definitions to a separate headerDavid Robillard1-0/+1
2021-09-10Add a user handle to destroy callbackDavid Robillard1-2/+6
2021-09-10Simplify BTree implementationDavid Robillard1-7/+31
2021-09-10Allow ZixBTreeIter to be allocated on the stackDavid Robillard1-40/+50
2021-09-10Remove destroy field of BTree and add zix_btree_clear()David Robillard1-3/+18
If this is used, it is only when clearing or freeing a tree. Allowing it to be given as a parameter directly there is clearer and avoids bloating the tree itself with information that isn't needed.
2021-07-17Use line comments where appropriateDavid Robillard1-36/+13
2020-12-31Update copyright headersDavid Robillard1-1/+1
2020-12-31Separate source from headersDavid Robillard1-0/+187