| 189 | }; |
| 190 | |
| 191 | class fatal_error final : public std::exception { |
| 192 | std::string mWhat = "Fatal Error"; |
| 193 | |
| 194 | public: |
| 195 | fatal_error() = default; |
| 196 | |
| 197 | explicit fatal_error(const std::string &str) noexcept : mWhat("Fatal Error: " + str) {} |
| 198 | |
| 199 | fatal_error(const fatal_error &) = default; |
| 200 | |
| 201 | fatal_error(fatal_error &&) noexcept = default; |
| 202 | |
| 203 | ~fatal_error() override = default; |
| 204 | |
| 205 | fatal_error &operator=(const fatal_error &) = default; |
| 206 | |
| 207 | fatal_error &operator=(fatal_error &&) = default; |
| 208 | |
| 209 | const char *what() const noexcept override |
| 210 | { |
| 211 | return this->mWhat.c_str(); |
| 212 | } |
| 213 | }; |
| 214 | |
| 215 | class forward_exception final : public std::exception { |
| 216 | std::string mWhat; |
no outgoing calls
no test coverage detected