summaryrefslogtreecommitdiffabout
path: root/include/kingate/exception.h
Side-by-side diff
Diffstat (limited to 'include/kingate/exception.h') (more/less context) (ignore whitespace changes)
-rw-r--r--include/kingate/exception.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/include/kingate/exception.h b/include/kingate/exception.h
new file mode 100644
index 0000000..6ebb361
--- a/dev/null
+++ b/include/kingate/exception.h
@@ -0,0 +1,44 @@
+#ifndef __KINGATE_EXCEPTION_H
+#define __KINGATE_EXCEPTION_H
+
+#include <stdexcept>
+#include <konforka/exception.h>
+
+/**
+ * @file
+ * @brief The kingate-specific exceptions.
+ */
+
+/**
+ * @brief the main kingate namespace.
+ */
+namespace kingate {
+ using namespace std;
+
+ /**
+ * The base for kingate-specific exception.
+ */
+ class exception : public konforka::exception {
+ public:
+ explicit exception(const string& w)
+ : konforka::exception(NOCODEPOINT,w) { }
+ exception(const string& fi,const string& fu,int l,const string &w)
+ : konforka::exception(fi,fu,l,w) { }
+ };
+
+ /**
+ * Thrown if the specified variable or parameter wasn't found.
+ */
+ class exception_notfound : public exception {
+ public:
+ explicit exception_notfound(const string& w)
+ : exception(w) { }
+ exception_notfound(const string& fi,const string& fu,int l,const string& w)
+ : exception(fi,fu,l,w) { }
+ };
+}
+
+#endif /* __KINGATE_EXCEPTION_H */
+/*
+ * vim:set ft=cpp:
+ */