#include <cstdlib>
#include <stdexcept>
#include "nmv-ustring.h"
#include "nmv-log-stream-utils.h"
Go to the source code of this file.
◆ _THROW
Value:if (std::getenv ("nmv_abort_on_throw")) \
abort (); \
else \
throw (EXPR);
◆ _THROW_EMPTY
Value:if (std::getenv ("nmv_abort_on_throw")) \
abort (); \
else \
throw;
◆ ABORT
| #define ABORT |
( |
|
a_reason | ) |
|
Value:do { \
LOG_EXCEPTION("aborting because: #a_reason"); abort(); \
} while (false)
◆ ABORT_IF_FAIL
| #define ABORT_IF_FAIL |
( |
|
a_cond | ) |
|
Value:if (!(a_cond)) { \
LOG_EXCEPTION ("condition (" << #a_cond << ") failed; aborting");\
}
◆ ABORT_IF_FAIL2
| #define ABORT_IF_FAIL2 |
( |
|
a_cond, |
|
|
|
a_reason |
|
) |
| |
Value:if (!(a_cond)) { \
LOG_EXCEPTION ("condition (" << #a_cond << ") failed; aborting because " << a_reason <<"\n"); abort();\
}
◆ NEMIVER_CATCH_AND_RETURN_NOX
| #define NEMIVER_CATCH_AND_RETURN_NOX |
( |
|
a_value | ) |
|
Value:} catch (Glib::Exception &e) { \
LOG_ERROR (e.what ()); \
return a_value; \
} catch (std::exception &e) { \
LOG_ERROR (e.what ()); \
return a_value; \
} catch (...) { \
LOG_ERROR ("An unknown error occured"); \
return a_value; \
}
◆ NEMIVER_CATCH_NOX
| #define NEMIVER_CATCH_NOX |
Value:} catch (Glib::Exception &e) { \
LOG_ERROR (e.what ()); \
} catch (std::exception &e) { \
LOG_ERROR (e.what ()); \
} catch (...) { \
LOG_ERROR ("An unknown error occured"); \
}
◆ NEMIVER_TRY
| #define NEMIVER_TRY try { |
◆ RETHROW_EXCEPTION
| #define RETHROW_EXCEPTION |
( |
|
exception | ) |
LOG_EXCEPTION ("catched and rethrowing exception: " << exception.what() << "\n") |
◆ RETURN_IF_FAIL
| #define RETURN_IF_FAIL |
( |
|
expression | ) |
|
Value:if (!(expression)) { \
LOG_ERROR ("assertion " << #expression << " failed. Returning.\n"); \
return; \
}
◆ RETURN_VAL_IF_FAIL
| #define RETURN_VAL_IF_FAIL |
( |
|
expression, |
|
|
|
value |
|
) |
| |
Value:if (!(expression)) { \
LOG_ERROR ("assertion " << #expression << " failed. Returning " << #value << "\n"); \
return value; \
}
◆ THROW
| #define THROW |
( |
|
a_reason | ) |
|
◆ THROW_EMPTY
Value:LOG_EXCEPTION (
"raised empty exception " <<
endl); \
_THROW_EMPTY
◆ THROW_EXCEPTION
| #define THROW_EXCEPTION |
( |
|
type, |
|
|
|
message |
|
) |
| |
Value:LOG_EXCEPTION ("raised " << #type << ": "<< message<< "\n"); \
_THROW (type (message));
◆ THROW_IF_FAIL
| #define THROW_IF_FAIL |
( |
|
a_cond | ) |
|
Value:if (!(a_cond)) { \
LOG_EXCEPTION ("condition (" << #a_cond << ") failed; raising exception\n" );\
}
◆ THROW_IF_FAIL2
| #define THROW_IF_FAIL2 |
( |
|
a_cond, |
|
|
|
a_reason |
|
) |
| |
Value:if (!(a_cond)) { \
LOG_EXCEPTION ("condition (" << #a_cond << ") failed; raising exception " << a_reason <<"\n");\
}
◆ THROW_IF_FAIL3
| #define THROW_IF_FAIL3 |
( |
|
a_cond, |
|
|
|
type, |
|
|
|
a_reason |
|
) |
| |
Value:if (!(a_cond)) { \
LOG_EXCEPTION ("condition (" << #a_cond << ") failed; raising exception " << #type << \
<<
": " << a_reason <<
"\n" );
_THROW (type (a_reason)) ;\
}
◆ TRACE_EXCEPTION
| #define TRACE_EXCEPTION |
( |
|
exception | ) |
LOG_EXCEPTION ("catched exception: " << exception.what () << "\n") |