A lightweight C library of portability wrappers and data structures
Zix is a lightweight C library of portability wrappers and data structures.
Allocation
ZixAllocator
: A customizable allocator.ZixBumpAllocator
: A simple realtime-safe “bump-pointer” allocator.Algorithms
zix/digest.h
: Digest functions suitable for hashing arbitrary data.Data Structures
ZixBTree
: A page-allocated B-tree.ZixHash
: An open-addressing hash table.ZixRing
: A lock-free realtime-safe ring buffer.ZixTree
: A binary search tree.Threading
ZixSem
: A portable semaphore wrapper.ZixThread
: A portable thread wrapper.File System
zix/filesystem.h
: Functions for working with filesystems.zix/path.h
: Functions for working with filesystem paths lexically.Environment
zix/environment.h
: Function to expand shell-style variables in a string.Zix is continually tested on:
None,
except the C standard library,
and some POSIX and platform-specific APIs where necessary.