Shared/Common.h file

Common header file, includes also CommonBase.h, <cstddef> and <cstdint>

Defines

#define DEATH_ENUM_FLAGS(type)
Mark an enum as a set of flags.
#define DEATH_PRIVATE_ENUM_FLAGS(type)
Mark a private enum as a set of flags.
#define DEATH_HELPER_EXPAND(...)
Workaround for MSVC not being able to expand __VA_ARGS__ correctly, would work with /Zc:preprocessor. Source: https://stackoverflow.com/a/5134656.
#define DEATH_HELPER_PICK(...)
Pick a macro implementation based on how many arguments were passed. Source: https://stackoverflow.com/a/11763277.
#define DEATH_HELPER_ARGS_COUNT(...)
Get number of arguments in a variadic macro.
#define DEATH_REMOVE_PARENS(x)
Remove optional parentheses from argument.