P99
|
◆ P99_IS_EMPTY
Value:
P00_ISEMPTY( \
/* test if there is just one argument, that might be empty */ \
P99_HAS_COMMA(__VA_ARGS__), \
/* test if P99_IS__EQ__ together with the argument \
adds a comma */ \
P99_HAS_COMMA(P00_IS__EQ__ __VA_ARGS__), \
/* test if the argument together with a parenthesis \
adds a comma */ \
P99_HAS_COMMA(__VA_ARGS__ (/*empty*/)), \
/* test if placing it between P99_IS__EQ__ and the \
parenthesis adds a comma */ \
P99_HAS_COMMA(P00_IS__EQ__ __VA_ARGS__ (/*empty*/)) \
)
Test if the argument list is empty. This expands to token 1 if the list was empty and to token 0 if there was anything other than a comment in the list. The implementation of this macro is kind of tricky and relies heavily on the fact that a function macro (
Definition at line 75 of file p99_args.h. |