diff options
Diffstat (limited to 'compute_kernel_writer/include/ckw/Error.h')
-rw-r--r-- | compute_kernel_writer/include/ckw/Error.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compute_kernel_writer/include/ckw/Error.h b/compute_kernel_writer/include/ckw/Error.h index eaf3f10c05..7da9544b9e 100644 --- a/compute_kernel_writer/include/ckw/Error.h +++ b/compute_kernel_writer/include/ckw/Error.h @@ -113,6 +113,13 @@ inline void ignore_unused(T &&...) */ #define CKW_ASSERT(cond) CKW_ASSERT_MSG(cond, #cond) +/** If the precondition is met but the condition is not met, throw an std::runtime_error if assertion is enabled. + * + * @param[in] precond The precondition that triggers the check. + * @param[in] cond The condition that is expected to be true if precondition is true. + */ +#define CKW_ASSERT_IF(precond, cond) CKW_ASSERT(!(precond) || (cond)) + /** Throw an std::runtime_error with the specified message if assertion is enabled. * * @param[in] msg The error message when the condition is not met. |