20# if __cplusplus >= 201103L
34bool config(
int env ,
bool whenUnset);
44# define zth_config(name) (::zth::config(::zth::Env::name, ::zth::Config::name))
46# if __cplusplus < 201103L
47# define ZTH_CONSTEXPR_RETURN(type, ...) \
48 type x = {__VA_ARGS__}; \
51# define ZTH_CONSTEXPR_RETURN(type, ...) return {__VA_ARGS__};
76# ifdef ZTH_OS_BAREMETAL
98# ifdef ZTH_CONFIG_ENABLE_DEBUG_PRINT
99 ZTH_CONFIG_ENABLE_DEBUG_PRINT;
110# ifdef ZTH_OS_BAREMETAL
175# ifdef ZTH_OS_BAREMETAL
193# ifdef ZTH_HAVE_LIBZMQ
201# if defined(ZTH_FORMAT_LIMITED) && ZTH_FORMAT_LIMITED
214 template <
typename T>
216 typedef std::allocator<T>
type;
224#undef ZTH_CONSTEXPR_RETURN
#define ZTH_CONSTEXPR_RETURN(type,...)
static int const Print_zmq
static int const Print_perf
static int const Print_context
static bool const EnablePerfEvent
Enable (but not necessarily record) perf.
static bool const DoPerfEvent
Record and output perf events.
static int const Print_coro
static size_t const DefaultFiberStackSize
Default fiber stack size in bytes.
static bool const EnableDebugPrint
Actually do print the debug output.
static int const Print_waiter
static bool const Debug
This is a debug build when set to true.
static bool const EnableAssert
When true, enable zth_assert().
static int const Print_fiber
static int const Print_worker
static int const Print_banner
ANSI color used by zth_dbg(). Printing this category is disabled when set to 0.
static size_t const PerfEventBufferSize
Buffer size for perf events.
static bool const ContextSignals
Take POSIX signal into account when doing a context switch.
static bool const EnableStackWaterMark
When true, enable stack watermark to detect maximum stack usage.
static bool const EnableThreads
Add (Worker) thread support when true.
static int const Print_thread
static bool const NamedFsm
Use named FSM guards/actions.
static bool const EnableStackGuard
When true, enable stack guards.
static bool const CheckTimesliceOverrun
Check time slice overrun at every context switch.
static bool const UseZMQ
Enable ZeroMQ support.
static int const Print_list
static int const Print_io
static bool const NamedObjects
Use named objects.
static bool const EnableColorLog
Enable colored output.
static int const Print_sync
static size_t const PerfVCDFileBuffer
VCD file buffer in bytes.
static bool const PerfSyscall
Also record syscalls by perf.
static constexpr struct timespec TimesliceOverrunReportThreshold()
Print an overrun reported when this timeslice is exceeded.
static int const Print_fsm
static bool const SupportDebugPrint
Add support to enable debug output prints.
static bool const EnableFullAssert
Show failing expression in case of a failed assert.
static constexpr struct timespec MinTimeslice()
Minimum time slice before zth::yield() actually yields.
static size_t const PerfEventBufferThresholdToTriggerVCDWrite
Threshold when to force writing out VCD buffer.
static bool const NamedSynchronizer
Save names for all zth::Synchronizer instances.
static bool const UseLimitedFormatSpecifiers
Use limited formatting specifiers.