ascii-chat 0.11.33
Video chat in your terminal
Loading...
Searching...
No Matches
debug.c
Go to the documentation of this file.
1
10
11#ifndef NDEBUG
12
13// clang-format off
15 {"sync-state",
16 '\0',
18 offsetof(options_t, debug_sync_state_time),
19 &default_debug_sync_state_time_value,
20 sizeof(double),
21 "Print synchronization primitive state with optional time offset (debug builds only).",
22 "DEBUG",
23 "TIME",
24 false, // required
25 NULL, // env_var_name
26 NULL, // validate_fn
27 NULL, // parse_fn
28 false, // owns_memory
29 true, // optional_arg
31 {0}, // metadata
32 NULL}, // action_fn
33 {"backtrace",
34 '\0',
36 offsetof(options_t, debug_backtrace_time),
37 &default_debug_backtrace_time_value,
38 sizeof(double),
39 "Print backtrace with optional time offset (debug builds only).",
40 "DEBUG",
41 "TIME",
42 false, // required
43 NULL, // env_var_name
44 NULL, // validate_fn
45 NULL, // parse_fn
46 false, // owns_memory
47 true, // optional_arg
49 {0}, // metadata
50 NULL}, // action_fn
51 {"memory-report",
52 '\0',
54 offsetof(options_t, debug_memory_report_interval),
55 &default_debug_memory_report_interval_value,
56 sizeof(double),
57 "Print memory report periodically at specified interval in seconds (debug builds only).",
58 "DEBUG",
59 "TIME",
60 false, // required
61 NULL, // env_var_name
62 NULL, // validate_fn
63 NULL, // parse_fn
64 false, // owns_memory
65 true, // optional_arg
67 {0}, // metadata
68 NULL}, // action_fn
69
71// clang-format on
72
73#else
74
75// Empty registry for non-debug builds
77
78#endif
@ OPTION_TYPE_DOUBLE
Floating point (–ratio 1.5)
Definition builder.h:165
const registry_entry_t g_debug_entries[]
Definition debug.c:14
@ OPTION_MODE_ALL
All modes + binary.
Shared structures and macros for registry implementation.
#define REGISTRY_TERMINATOR()
Initialize a terminator entry (sentinel value for array end) Uses designated initializers to properly...
Consolidated options structure.
Registry entry - stores option definition with mode bitmask and metadata.