static void ArgumentNotNull(T * argument, const char * message = nullptr, ...) { va_list args; va_start(args, message); Assert_VA(argument != nullptr, message, args); va_end(args); }
void Assert(bool expression, const char * message, ...) { va_list args; va_start(args, message); Assert_VA(expression, message, args); va_end(args); }
void Fail(const char * message, ...) { va_list args; va_start(args, message); Assert_VA(false, message, args); va_end(args); }
void Fail_VA(const char * message, va_list args) { Assert_VA(false, message, args); }