5#if !defined(SKIP_INCLUDES)
12 #if !defined PLACEHOLDERS
13 #error "The contained type must be defined"
19 #define ITEM_DELETE item_delete
21 #define ITEM_CLONE item_clone
23 #define ITEM_EQ item_eq
25 #define ITEM_DEBUG item_debug
29#if !defined ITEM_DELETE
30 #define ITEM_DELETE(value)
33#if !defined ITEM_CLONE
34 #define ITEM_CLONE(value) (*(value))
37#if !defined ITEM_DEBUG
38 #define ITEM_DEBUG DC_DEFAULT_DEBUG
115 self->present =
true;
static void debug(SELF const *self, dc_debug_fmt fmt, FILE *stream)
static bool empty(ITER const *iter)
static SELF clone(SELF const *self)
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 EXPAND_STRING(NAME)
#define DC_ASSUME(expr,...)
dc_gdb_marker derive_c_option
Debug format helpers for debug printin data structures.
A queue comprised of an extendable circular buffer.
static ITEM get_value_or(SELF const *self, ITEM const default_value)
static bool is_present(SELF const *self)
static bool replace(SELF *self, ITEM value)
static ITEM const * get_const_or(SELF const *self, ITEM const *default_value)
static SELF from(ITEM value)
static ITEM const * get_const(SELF const *self)
static FILE * stream(SELF *self)
Opens a file for.