|
|
|
@ -15,22 +15,22 @@ namespace Shader {
|
|
|
|
|
|
|
|
|
|
class Exception : public std::exception {
|
|
|
|
|
public:
|
|
|
|
|
explicit Exception(std::string message_) noexcept : message{std::move(message_)} {}
|
|
|
|
|
explicit Exception(std::string message) noexcept : err_message{std::move(message)} {}
|
|
|
|
|
|
|
|
|
|
const char* what() const override {
|
|
|
|
|
return message.c_str();
|
|
|
|
|
const char* what() const noexcept override {
|
|
|
|
|
return err_message.c_str();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Prepend(std::string_view prepend) {
|
|
|
|
|
message.insert(0, prepend);
|
|
|
|
|
err_message.insert(0, prepend);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Append(std::string_view append) {
|
|
|
|
|
message += append;
|
|
|
|
|
err_message += append;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
std::string message;
|
|
|
|
|
std::string err_message;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
class LogicError : public Exception {
|
|
|
|
|