AudRecordLib
|
Defines a custom ASSERT macro. More...
Go to the source code of this file.
Defines | |
#define | CONCAT_INT(a, b) a##b |
#define | CONCAT(a, b) CONCAT_INT(a, b) |
#define | WSTRINGIFY_INT(a) CONCAT(L, #a) |
#define | WSTRINGIFY(a) WSTRINGIFY_INT(a) |
#define | STRINGIFY_INT(a) #a |
#define | STRINGIFY(a) STRINGIFY_INT(a) |
#define | CASSERT(expr) static const char CONCAT(cassertTester, __COUNTER__) [(expr) ? 1 : -1] |
#define | ASSERT(expr) |
Defines a custom ASSERT macro.
#define CASSERT | ( | expr | ) | static const char CONCAT(cassertTester, __COUNTER__) [(expr) ? 1 : -1] |
Causes a compile time error by trying to define an array of negative size is the expr evaluates to false.
#define CONCAT | ( | a, | |
b | |||
) | CONCAT_INT(a, b) |
Concatenates b to a by passing the arguments to CONCAT_INT() This is so any macro parameters are exapanded before the pasting takes place
#define CONCAT_INT | ( | a, | |
b | |||
) | a##b |
Internal macro that actually performs the concatenation of a and b with the token pasting operator
#define STRINGIFY | ( | a | ) | STRINGIFY_INT(a) |
Turns a into a character string by putting it in speech marks. The argument is passed to STRINGIFY_INT so that a is expanded if it's a macro itself
#define STRINGIFY_INT | ( | a | ) | #a |
Internal macro that actually turns a into a string This is simply done using the stringify (#) operator
#define WSTRINGIFY | ( | a | ) | WSTRINGIFY_INT(a) |
Turns a into a wide character string by putting it in speech marks and prepending an L. The argument is passed to WSTRINGIFY_INT so that a is expanded if it's a macro itself
#define WSTRINGIFY_INT | ( | a | ) | CONCAT(L, #a) |
Internal macro that actually turns a into a wide string This is achieved by passing an L and #a to CONCAT so they are paasted together