cs-midi/AH/Debug/DebugVal.hpp

56 lines
3.5 KiB
C++

#define COUNT(...) COUNT_HELPER(__VA_ARGS__, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
#define COUNT_HELPER(N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N, ...) N
#define DEBUGVALN(N) DEBUGVALN_HELPER(N)
#define DEBUGVALN_HELPER(N) DEBUGVAL##N
#define DEBUGVAL10(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL9(__VA_ARGS__); \
} while (0)
#define DEBUGVAL9(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL8(__VA_ARGS__); \
} while (0)
#define DEBUGVAL8(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL7(__VA_ARGS__); \
} while (0)
#define DEBUGVAL7(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL6(__VA_ARGS__); \
} while (0)
#define DEBUGVAL6(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL5(__VA_ARGS__); \
} while (0)
#define DEBUGVAL5(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL4(__VA_ARGS__); \
} while (0)
#define DEBUGVAL4(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL3(__VA_ARGS__); \
} while (0)
#define DEBUGVAL3(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL2(__VA_ARGS__); \
} while (0)
#define DEBUGVAL2(x, ...) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << ", "; \
DEBUGVAL1(__VA_ARGS__); \
} while (0)
#define DEBUGVAL1(x) \
do { \
DEBUG_OUT << NAMEDVALUE(x) << DEBUG_ENDL; \
} while (0)