|
Vowpal Wabbit
|
Macros | |
| #define | VW_EXPAND(x) x |
| #define | VW_GET_MACRO(_1, _2, NAME, ...) NAME |
| #define | THROW_OR_RETURN(...) VW_EXPAND(VW_GET_MACRO(__VA_ARGS__, THROW_OR_RETURN_NORMAL, THROW_OR_RETURN_VOID, UNUSED)(__VA_ARGS__)) |
| #define | THROW(args) |
| #define | THROW_EX(ex, args) |
| #define | VW_ASSERT(condition, args) if (!(condition)) { THROW(args); } |
| #define | THROW_OR_RETURN_NORMAL(args, retval) |
| #define | THROW_OR_RETURN_VOID(args) |
| #define THROW | ( | args | ) |
| #define THROW_EX | ( | ex, | |
| args | |||
| ) |
| #define THROW_OR_RETURN | ( | ... | ) | VW_EXPAND(VW_GET_MACRO(__VA_ARGS__, THROW_OR_RETURN_NORMAL, THROW_OR_RETURN_VOID, UNUSED)(__VA_ARGS__)) |
| #define THROW_OR_RETURN_NORMAL | ( | args, | |
| retval | |||
| ) |
| #define THROW_OR_RETURN_VOID | ( | args | ) |
| #define VW_ASSERT | ( | condition, | |
| args | |||
| ) | if (!(condition)) { THROW(args); } |
| #define VW_EXPAND | ( | x | ) | x |
| #define VW_GET_MACRO | ( | _1, | |
| _2, | |||
| NAME, | |||
| ... | |||
| ) | NAME |