15#define HEPH_EXCEPTION_DEFAULT_HANDLER &Heph::Exception::DefaultHandler
21#define HEPH_RAISE_EXCEPTION(pSender, ex) (ex).Raise((const void*)(pSender))
27#define HEPH_RAISE_AND_THROW_EXCEPTION(pSender, ex) { \
28 (ex).Raise((const void*)(pSender)); \
71 Exception(
const std::string& method,
const std::string& message);
76 virtual const char* what() const noexcept override;
82 virtual std::
string GetName() const;
88 virtual const std::
string& GetMethod() const;
94 virtual const std::
string& GetMessage() const;
101 virtual
void Raise(const
void* pSender) const;
108 virtual
void AddToExceptions() const;
115 static std::shared_ptr<
Exception> GetLastException() noexcept;
121 static std::vector<std::shared_ptr<
Exception>>& GetExceptions() noexcept;
#define HEPH_API
Definition HephShared.h:132
class for managing callback functions.
Definition Event.h:25
stores exception information. Base class for exceptions.
Definition Exception.h:40
std::string message
Definition Exception.h:59
std::string method
Definition Exception.h:53
Exception(const std::string &method, const std::string &message)
virtual ~Exception()=default
stores the information required to handle an event.
Definition EventParams.h:16