summaryrefslogtreecommitdiffstats
path: root/include/zix/ring.h
AgeCommit message (Collapse)AuthorFilesLines
2024-06-22Add ZIX_NODISCARD attribute to allocating, accessor, and pure APIDavid Robillard1-0/+2
2024-06-22Consistently use ZIX_MALLOC_API and ZIX_MALLOC_FUNCDavid Robillard1-1/+1
2023-05-11Improve reference documentationDavid Robillard1-1/+1
2022-11-17Improve documentationDavid Robillard1-2/+3
2022-10-24Expose ring transaction API in shared libraryDavid Robillard1-0/+3
2022-10-23Split reference documentation up into groups and add global headerDavid Robillard1-48/+44
The "global" header just provides a convenient place to define the group structure of the library. Applications are better off using the individual headers, but this one will work fine if you don't care about build times or precise dependencies.
2022-10-21Factor out public declaration scope markersDavid Robillard1-6/+2
2022-10-21Split up common headerDavid Robillard1-1/+1
2022-10-20Fix doc commentsDavid Robillard1-4/+4
2022-08-18Add return status to zix_ring_mlock()David Robillard1-1/+1
2022-08-18Add transactional ring APIDavid Robillard1-0/+73
2022-08-12Document the thread semantics of every ring functionDavid Robillard1-15/+42
2022-06-28Fix incorrect function attributesDavid Robillard1-3/+3
The ring accessors are pure, not const, because they read pointed-to data (the ring) that may change between invocations. The BTree iter comparison is const because it only compares the values passed as parameters (although they contain pointers, they aren't dereferenced).
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-10Adopt REUSE machine-readable licensing standardDavid Robillard1-15/+2
2021-09-10Add custom allocator supportDavid Robillard1-1/+2
2021-09-10Add nullability annotationsDavid Robillard1-11/+13
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-1/+1
2021-07-17Use line comments where appropriateDavid Robillard1-24/+8
2020-12-31Update copyright headersDavid Robillard1-1/+1
2020-12-31Separate source from headersDavid Robillard1-0/+141