Functions
CPPMAGIC_NOTHING
#define CPPMAGIC_NOTHING()
CPPMAGIC_STRINGIFY()
#define CPPMAGIC_STRINGIFY(...) _CPPMAGIC_STRINGIFY(__VA_ARGS__)
CPPMAGIC_GLUE2()
#define CPPMAGIC_GLUE2(a_, b_) _CPPMAGIC_GLUE2(a_, b_)
CPPMAGIC_1ST()
#define CPPMAGIC_1ST(a_, ...) a_
CPPMAGIC_2ND()
#define CPPMAGIC_2ND(a_, b_, ...) b_
CPPMAGIC_ISZERO()
#define CPPMAGIC_ISZERO(a_)
CPPMAGIC_NONZERO()
#define CPPMAGIC_NONZERO(a_) CPPMAGIC_ISZERO(CPPMAGIC_ISZERO(a_))
CPPMAGIC_NONEMPTY()
#define CPPMAGIC_NONEMPTY(...)
CPPMAGIC_ISEMPTY()
#define CPPMAGIC_ISEMPTY(...)
CPPMAGIC_IFELSE()
#define CPPMAGIC_IFELSE(cond_)
CPPMAGIC_EVAL1()
#define CPPMAGIC_EVAL1(...) __VA_ARGS__
CPPMAGIC_EVAL2()
#define CPPMAGIC_EVAL2(...)
CPPMAGIC_EVAL4()
#define CPPMAGIC_EVAL4(...)
CPPMAGIC_EVAL8()
#define CPPMAGIC_EVAL8(...)
CPPMAGIC_EVAL16()
#define CPPMAGIC_EVAL16(...)
CPPMAGIC_EVAL32()
#define CPPMAGIC_EVAL32(...)
CPPMAGIC_EVAL64()
#define CPPMAGIC_EVAL64(...)
CPPMAGIC_EVAL128()
#define CPPMAGIC_EVAL128(...)
CPPMAGIC_EVAL256()
#define CPPMAGIC_EVAL256(...)
CPPMAGIC_EVAL512()
#define CPPMAGIC_EVAL512(...)
CPPMAGIC_EVAL1024()
#define CPPMAGIC_EVAL1024(...)
CPPMAGIC_EVAL()
#define CPPMAGIC_EVAL(...) CPPMAGIC_EVAL1024(__VA_ARGS__)
CPPMAGIC_DEFER1()
#define CPPMAGIC_DEFER1(a_) a_ CPPMAGIC_NOTHING()
CPPMAGIC_DEFER2()
#define CPPMAGIC_DEFER2(a_) a_ CPPMAGIC_NOTHING CPPMAGIC_NOTHING()()
CPPMAGIC_MAP()
#define CPPMAGIC_MAP(m_, ...)
CPPMAGIC_2MAP()
#define CPPMAGIC_2MAP(m_, ...)
CPPMAGIC_JOIN()
#define CPPMAGIC_JOIN(d_, ...)