29#error You are including <libcwd/debug.h> while CWDEBUG is not defined. See the comments in this header file for more information.
69#define Debug(...) LibcwDebug(LIBCWD_DEBUG_CHANNELS, __VA_ARGS__)
97#define Dout(cntrl, ...) LibcwDout(LIBCWD_DEBUG_CHANNELS, ::libcwd::libcw_do, cntrl, __VA_ARGS__)
105#define DoutEntering(cntrl, ...) \
106 int __cwds_debug_indentation = 2; \
107 LibcwDoutScopeBegin(LIBCWD_DEBUG_CHANNELS, ::libcwd::libcw_do, cntrl) \
108 LibcwDoutStream << "Entering " << __VA_ARGS__; \
110 ::libcwd::Indent __cwds_debug_indent(__cwds_debug_indentation);
119#define DoutFatal(cntrl, ...) LibcwDoutFatal(LIBCWD_DEBUG_CHANNELS, ::libcwd::libcw_do, cntrl, __VA_ARGS__)
144#define ForAllDebugChannels(...) LibcwdForAllDebugChannels(LIBCWD_DEBUG_CHANNELS, __VA_ARGS__)
162#define ForAllDebugObjects(...) LibcwdForAllDebugObjects(LIBCWD_DEBUG_CHANNELS, __VA_ARGS__)
213 explicit Mark(
char8_t const* utf8_m) :
Mark(reinterpret_cast<char const*>(utf8_m)) { }
237#include <libcwd/init_functions.h>
240#if defined(CWDEBUG) || !defined(NDEBUG)
249using namespace libcwd::init_functions;
254NAMESPACE_DEBUG_CHANNELS_START
257NAMESPACE_DEBUG_CHANNELS_END
This object represents a debug channel, it has a fixed label. A debug channel can be viewed upon as a...
Definition Channel.h:74
This is the header file that third-party library headers should include.
This namespace contains the standard debug channels of libcwd.
DebugObject libcw_do
The default debug object.
Definition debug.cxx:222
int M_indent
The extra number of spaces that were added to the indentation.
Definition debug.h:175
~Indent()
Destructor.
Definition debug.h:181
Indent(int indent)
Construct an Indent object.
Definition debug.h:178
Mark(char m='|')
Construct a Mark object.
Definition debug.h:198
int M_indent
The old indentation.
Definition debug.h:195
~Mark()
Destructor.
Definition debug.h:217