1#ifndef H_EXTENSIONS_CUTEHMI_2_INCLUDE_CUTEHMI_EXCEPTIONMIXIN_HPP
2#define H_EXTENSIONS_CUTEHMI_2_INCLUDE_CUTEHMI_EXCEPTIONMIXIN_HPP
4#include "Exception.hpp"
6#include <QCoreApplication>
15template <
class DERIVED>
22 void raise() const noexcept(false) override;
27template <class DERIVED>
33template <
class DERIVED>
36 throw *(
static_cast<const DERIVED *
>(
this));
39template <
class DERIVED>
42 return new DERIVED(
static_cast<const DERIVED &
>(*
this));
Exception.
Definition: Exception.hpp:16
const char * what() const noexcept override
Definition: Exception.cpp:20
Exception mixin.
Definition: ExceptionMixin.hpp:18
ExceptionMixin(const QString &what)
Definition: ExceptionMixin.hpp:28
Exception * clone() const override
Definition: ExceptionMixin.hpp:40
void raise() const noexcept(false) override
Definition: ExceptionMixin.hpp:34
Definition: constants.hpp:6