21 #ifndef mia_core_errormacro_hh
22 #define mia_core_errormacro_hh
44 template <
typename V,
typename... T>
51 template <
typename... T>
54 std::stringstream msg;
72 template <
typename E,
typename... T>
87 #define DEBUG_ASSERT_RELEASE_THROW(cond, msg... ) \
89 throw ::mia::create_exception<std::logic_error>(msg); \
92 #define DEBUG_ASSERT_RELEASE_THROW(cond, msg... ) \
94 std::cerr << "Assertion failed: \'" #cond << "\' " << \
95 __FILE__ << ":" << __LINE__ << " " \
96 << ::mia::__create_message(msg) << "\n"; \
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
E create_exception(T...t)
helper template to create exceptions with complex messages
const std::string __create_message(T...t)
void __append_message(std::ostream &os, const V &v)
#define NS_MIA_END
conveniance define to end the mia namespace