24 #ifndef __DOTS_INTERNAL_PARSE_ERROR_H__
25 #define __DOTS_INTERNAL_PARSE_ERROR_H__
28 #include <Safir/Dob/Typesystem/ToolSupport/Internal/InternalExportDefs.h>
40 #pragma warning (push)
41 #pragma warning (disable: 4275)
42 #pragma warning (disable: 4251)
48 class DOTS_INTERNAL_API
ParseError :
public std::exception
60 ParseError(
const std::string& label,
const std::string& description,
const std::string& file,
int errorId)
62 ,m_description(description)
79 const std::string&
Label()
const throw() {
return m_label;}
86 const std::string&
Description()
const throw() {
return m_description;}
93 const std::string&
File()
const throw() {
return m_file;}
109 virtual const char*
what ()
const throw ()
113 std::ostringstream os;
114 os<<m_label<<
"; "<<m_description<<
"; "<<m_file<<
"; ErrorCode="<<m_errorId;
117 return m_what.c_str();
122 std::string m_description;
124 mutable std::string m_what;
129 #pragma warning (pop)