summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/exceptions.cc9
-rw-r--r--src/exceptions.h24
2 files changed, 33 insertions, 0 deletions
diff --git a/src/exceptions.cc b/src/exceptions.cc
index 72198fc..d09be61 100644
--- a/src/exceptions.cc
+++ b/src/exceptions.cc
@@ -30,9 +30,18 @@ ProgrammingError::ProgrammingError (string file, int line)
}
+
SubripError::SubripError (string saw, string expecting, list<string> context)
: runtime_error ("Error in SubRip file: saw " + (saw.empty() ? "an empty string" : saw) + " when expecting " + expecting)
, _context (context)
{
}
+
+
+WebVTTError::WebVTTError(string saw, string expecting, list<string> context)
+ : runtime_error("Error in WebVTT file: saw " + (saw.empty() ? "an empty string" : saw) + " when expecting " + expecting)
+ , _context(context)
+{
+
+}
diff --git a/src/exceptions.h b/src/exceptions.h
index a032252..2b2b09c 100644
--- a/src/exceptions.h
+++ b/src/exceptions.h
@@ -66,6 +66,30 @@ private:
std::list<std::string> _context;
};
+
+/** @class WebVTTError
+ * @brief An error raised when reading a WebVTT file.
+ */
+class WebVTTError : public std::runtime_error
+{
+public:
+ WebVTTError(std::string message)
+ : std::runtime_error(message.c_str())
+ {}
+
+ WebVTTError(std::string saw, std::string expecting, std::list<std::string> context);
+
+ ~WebVTTError() throw () {}
+
+ std::list<std::string> context() const {
+ return _context;
+ }
+
+private:
+ std::list<std::string> _context;
+};
+
+
class SSAError : public std::runtime_error
{
public: