PerceMon
exception.hh
1#pragma once
2
3#ifndef __PERCEMON_EXCEPTION_HH__
4#define __PERCEMON_EXCEPTION_HH__
5
6#include <exception>
7#include <string>
8
9namespace percemon {
10
11struct not_implemented_error : public std::exception {
12 private:
13 const std::string what_arg;
14
15 public:
16 not_implemented_error(const std::string& what_arg) : what_arg{what_arg} {}
17 not_implemented_error(const char* what_arg) : what_arg{what_arg} {}
18
19 not_implemented_error(const not_implemented_error& other) noexcept = default;
20
21 virtual const char* what() const noexcept {
22 return this->what_arg.c_str();
23 }
24};
25
26} // namespace percemon
27
28#endif /* end of include guard: __PERCEMON_EXCEPTION_HH__ */
Definition: exception.hh:11