10#if !defined(SKIP_INCLUDES)
48 #define ENTRIES_VECTOR NS(NAME, entries)
49 #define TRACKED_ENTRY NS(EXPAND(ENTRIES), entry)
56 #pragma push_macro("ALLOC")
63 #define ITEM TRACKED_ENTRY
64 #define ALLOC stdalloc
65 #define INTERNAL_NAME ENTRIES_VECTOR
68 #pragma pop_macro("ALLOC")
81 return &self->entries;
135 if (entry->
ptr == ptr) {
155 #undef ENTRIES_VECTOR
static void debug(SELF const *self, dc_debug_fmt fmt, FILE *stream)
static void free(SELF *self, void *ptr)
static void * realloc(SELF *self, void *ptr, size_t size)
static void * malloc(SELF *self, size_t size)
static void * calloc(SELF *self, size_t count, size_t size)
#define ENTRIES_VECTOR
For unit tests expected to throw, as C has no unwind, we cannot free allocated memory....
static void unleak_and_delete(SELF *self)
static ENTRIES_VECTOR const * get_entries(SELF const *self)
#define DC_TRAIT_ALLOC(SELF)
static ITER get_iter(SELF *self)
static INDEX_TYPE size(SELF const *self)
static ITEM * push(SELF *self, ITEM item)
dc_debug_fmt dc_debug_fmt_scope_end(dc_debug_fmt fmt)
dc_debug_fmt dc_debug_fmt_scope_begin(dc_debug_fmt fmt)
static void dc_debug_fmt_print(dc_debug_fmt fmt, FILE *stream, const char *format,...)
#define DC_ASSUME(expr,...)
Debug format helpers for debug printin data structures.
static FILE * stream(SELF *self)
Opens a file for.