smats  0.0.1
Satisfability Modulo Arithmetic Theories Symbols
Loading...
Searching...
No Matches
exception.h
1
11#pragma once
12
13#include <stdexcept>
14#include <string>
15
16namespace smats {
17
18class SmatsException : public std::runtime_error {
19 public:
20 explicit SmatsException(const char* const message) : std::runtime_error(message) {}
21 explicit SmatsException(const std::string& message) : std::runtime_error(message) {}
22};
23
25 public:
26 SmatsNotImplementedException() : SmatsException("Not yet implemented") {}
27};
28
30 public:
31 SmatsNotSupported() : SmatsException("Not supported") {}
32};
33
35 public:
36 SmatsInvalidArgument() : SmatsException("Invalid argument") {}
37};
38
40
42 public:
43 SmatsInvalidState() : SmatsException("Invalid state") {}
44};
45
47 public:
48 explicit SmatsAssertionError(const char* const message) : SmatsException(message) {}
49 explicit SmatsAssertionError(const std::string& message) : SmatsException(message) {}
50};
51
53 public:
54 explicit SmatsOutOfRange(const char* const message) : SmatsException(message) {}
55 explicit SmatsOutOfRange(const std::string& message) : SmatsException(message) {}
56};
57
59 public:
60 explicit SmatsUnreachable(const char* const message) : SmatsException(message) {}
61 explicit SmatsUnreachable(const std::string& message) : SmatsException(message) {}
62};
63
64} // namespace smats
Definition exception.h:46
Definition exception.h:18
Definition exception.h:34
Definition exception.h:41
Definition exception.h:24
Definition exception.h:29
Definition exception.h:52
Definition exception.h:58
ExpressionKind enum.