1.3 KiB
DLibC
Description
Some custom C types and functions I often use. These are generally header-only, but if they have source files, they'll be in their own directories
They're generally designed for C23 onwards, but "should" work with older versions.
The goal is for the types themselves to be memory-safe, however keep in mind that they're still only as good as your usage of them.
Usage
Literally just copy the header file you want and let your favourite semi-usable build system do the rest.
List of "What we have"
dlibc/vector.h- A vector type for storing a dynamic amount of type T, with an optional destructor.dlibc/set.h- A set type for storing a dynamic amount of type T, with enforced uniqueness and an optional destructor and comparator.
Contributing
If you want to contribute, please make a pull request and I'll review it. If you want to contribute a new type or function, please make sure it is useful and not just a "cool" thing. If you change an existing type, please run make in build/ directory and ctest to ensure compatibility hasn't been broken. If it's new, please write a test for it in tests/test_.c so others can see the guidelines on how the type is used.
Legal Mumbo Jumbo
Licensed under the MIT License (because GPL doesn't make sense for this (sorry Stallman))
Copyright (c) 2026 DcruBro