summaryrefslogtreecommitdiff
path: root/modules/core
diff options
context:
space:
mode:
authorClaudius 'keldu' Holeksa <mail@keldu.de>2024-07-17 11:19:56 +0200
committerClaudius 'keldu' Holeksa <mail@keldu.de>2024-07-17 11:19:56 +0200
commit0286c97dd6ef613d701c0e723058e60e46ba2419 (patch)
treea89466cdcb120c55733b5e8149a060965f3bdee4 /modules/core
parentf619c4093e564562ce2d48f8cf9b8bcac859009c (diff)
Added Error + print Macro
Diffstat (limited to 'modules/core')
-rw-r--r--modules/core/c++/error.hpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/core/c++/error.hpp b/modules/core/c++/error.hpp
index 790281d..b4a9504 100644
--- a/modules/core/c++/error.hpp
+++ b/modules/core/c++/error.hpp
@@ -285,4 +285,17 @@ bool error::is_type() const {
return error_code_ == impl::get_template_id<T>();
}
+#define SAW_CHECK_AND_PRINT(ErrorName, ValueName, ErrStream) \
+ if(ErrorName.is_error()) [[unlikely]] { \
+ auto& err = ErrorName.get_error(); \
+ ErrStream << "Error: "<< err.get_category(); \
+ auto err_msg = err.get_message(); \
+ if(!err_msg.empty()){ \
+ ErrStream << " - " << err_msg; \
+ } \
+ ErrStream << std::endl; \
+ } \
+ auto& ValueName = ErrorName.get_value();
+
+
} // namespace saw