1 #ifndef MSP_DATAFILE_EXCEPT_H_
2 #define MSP_DATAFILE_EXCEPT_H_
7 #include "mspdatafile_api.h"
12 class MSPDATAFILE_API data_error: public std::runtime_error
19 data_error(const std::string &, unsigned, const std::string &);
20 data_error(const std::string &, unsigned, const std::exception &);
21 data_error(const std::string &, unsigned, const data_error &);
23 const std::string &get_source() const { return source; }
24 unsigned get_line() const { return line; }
27 std::string make_what(const std::string &, unsigned, const std::string &);
31 class MSPDATAFILE_API parse_error: public std::runtime_error
34 parse_error(const std::string &);
38 class MSPDATAFILE_API syntax_error: public std::runtime_error
41 syntax_error(const std::string &t);
45 class MSPDATAFILE_API bad_definition: public std::runtime_error
48 bad_definition(const std::string &w);
52 class MSPDATAFILE_API nesting_error: public std::logic_error
55 nesting_error(const std::string &);
59 class MSPDATAFILE_API unknown_keyword: public std::runtime_error
62 unknown_keyword(const std::string &);
66 class MSPDATAFILE_API invalid_signature: public std::runtime_error
69 invalid_signature(const std::string &, const std::string &);
73 class MSPDATAFILE_API no_collection: public std::runtime_error
76 no_collection(const std::type_info &);
79 } // namespace DataFile