#pragma once #include "ddkit/utils/Logger.hpp" #include #define DDKIT_THROW_ON_FALSE(cond) \ if (!(cond)) { \ /*raise(SIGTRAP); */ \ std::string msg = std::string("Assertion \"" #cond "\" failed in ") + __FILE__ + ":" + std::to_string(__LINE__); \ ddkit::log::fatal() << msg; \ throw std::logic_error(msg); \ } #define DDKIT_THROW_ON_FALSE_INFO(cond, info) \ if (!(cond)) { \ /*raise(SIGTRAP);*/ \ std::string msg = std::string("Assertion \"" #cond "\" failed in ") + __FILE__ + ":" + std::to_string(__LINE__); \ ddkit::log::fatal() << msg << " :" << std::string(info); \ throw std::logic_error(msg + " :" + std::string(info)); \ }