]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/glsl_error.h
Remove unnecessary std:: qualifiers
[libs/gl.git] / source / glsl / glsl_error.h
index 63c49bbd9112d95f521369d43577603958e17589..0b4b4b02d2ddff4641f41b5c59ce2df6c1d110f7 100644 (file)
@@ -13,6 +13,7 @@ struct Location;
 class invalid_shader_source: public std::runtime_error
 {
 public:
+       invalid_shader_source(const std::string &w): runtime_error(w) { }
        invalid_shader_source(const Location &, const std::string &);
 #if __cplusplus>=201103L
        template<typename... Args>
@@ -23,6 +24,13 @@ public:
        virtual ~invalid_shader_source() throw() { }
 };
 
+class syntax_error: public invalid_shader_source
+{
+public:
+       syntax_error(const Location &, const std::string &, const std::string &);
+       virtual ~syntax_error() throw() { }
+};
+
 class parse_error: public invalid_shader_source
 {
 public:
@@ -30,6 +38,33 @@ public:
        virtual ~parse_error() throw() { }
 };
 
+class internal_error: public std::logic_error
+{
+public:
+       internal_error(const std::string &w): logic_error(w) { }
+       virtual ~internal_error() throw() { }
+};
+
+struct Diagnostic
+{
+       enum Severity
+       {
+               INFO,
+               WARN,
+               ERR
+       };
+
+       Severity severity;
+       int source;
+       unsigned line;
+       int provoking_source;
+       unsigned provoking_line;
+       std::string message;
+
+       Diagnostic();
+       Diagnostic(Severity, int, unsigned, const std::string &);
+};
+
 } // namespace SL
 } // namespace GL
 } // namespace Msp