diff options
author | Remko Tronçon <git@el-tramo.be> | 2009-06-01 08:48:42 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2009-06-01 09:24:28 (GMT) |
commit | 2812bddd81f8a1b804c7460f4e14cd0aa393d129 (patch) | |
tree | d46294f35150c4f0f43deaf2d31fceaf945ae715 /3rdParty/CppUnit/cppunit/Exception.h | |
download | swift-contrib-2812bddd81f8a1b804c7460f4e14cd0aa393d129.zip swift-contrib-2812bddd81f8a1b804c7460f4e14cd0aa393d129.tar.bz2 |
Import.
Diffstat (limited to '3rdParty/CppUnit/cppunit/Exception.h')
-rw-r--r-- | 3rdParty/CppUnit/cppunit/Exception.h | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/3rdParty/CppUnit/cppunit/Exception.h b/3rdParty/CppUnit/cppunit/Exception.h new file mode 100644 index 0000000..bf5fcac --- /dev/null +++ b/3rdParty/CppUnit/cppunit/Exception.h @@ -0,0 +1,90 @@ +#ifndef CPPUNIT_EXCEPTION_H +#define CPPUNIT_EXCEPTION_H + +#include <cppunit/Portability.h> +#include <cppunit/Message.h> +#include <cppunit/SourceLine.h> +#include <exception> + + +CPPUNIT_NS_BEGIN + + +/*! \brief Exceptions thrown by failed assertions. + * \ingroup BrowsingCollectedTestResult + * + * Exception is an exception that serves + * descriptive strings through its what() method + */ +class CPPUNIT_API Exception : public std::exception +{ +public: + /*! \brief Constructs the exception with the specified message and source location. + * \param message Message associated to the exception. + * \param sourceLine Source location related to the exception. + */ + Exception( const Message &message = Message(), + const SourceLine &sourceLine = SourceLine() ); + +#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED + /*! + * \deprecated Use other constructor instead. + */ + Exception( std::string message, + long lineNumber, + std::string fileName ); +#endif + + /*! \brief Constructs a copy of an exception. + * \param other Exception to copy. + */ + Exception( const Exception &other ); + + /// Destructs the exception + virtual ~Exception() throw(); + + /// Performs an assignment + Exception &operator =( const Exception &other ); + + /// Returns descriptive message + const char *what() const throw(); + + /// Location where the error occured + SourceLine sourceLine() const; + + /// Message related to the exception. + Message message() const; + + /// Set the message. + void setMessage( const Message &message ); + +#ifdef CPPUNIT_ENABLE_SOURCELINE_DEPRECATED + /// The line on which the error occurred + long lineNumber() const; + + /// The file in which the error occurred + std::string fileName() const; + + static const std::string UNKNOWNFILENAME; + static const long UNKNOWNLINENUMBER; +#endif + + /// Clones the exception. + virtual Exception *clone() const; + +protected: + // VC++ does not recognize call to parent class when prefixed + // with a namespace. This is a workaround. + typedef std::exception SuperClass; + + Message m_message; + SourceLine m_sourceLine; + std::string m_whatMessage; +}; + + +CPPUNIT_NS_END + + +#endif // CPPUNIT_EXCEPTION_H + |