X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FException.hh;h=87d20553ce0f93b385e71f3b0e5e107a39b26fc5;hb=93d9568d448749dc187e7622b733a4a3caa319df;hp=c6f32572797c72dfe7ee348a4b6cee148ff0a83a;hpb=601d1f509f5bb24df167a4dd5a20da67a0af9af8;p=senf.git diff --git a/senf/Utils/Exception.hh b/senf/Utils/Exception.hh index c6f3257..87d2055 100644 --- a/senf/Utils/Exception.hh +++ b/senf/Utils/Exception.hh @@ -37,7 +37,7 @@ #include //#include "Exception.mpp" -///////////////////////////////hh.p//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// /** \defgroup exception Exception classes @@ -59,10 +59,10 @@ This will add the user information to any %senf exception thrown. The Exception is however not a stream. If you need to do more extensive formating, either use an intermediate string-stream or - use Boost.Format: + use Boost.Format: \code - try { + try { // ... } catch (senf::ExceptionMixin & e) { @@ -96,7 +96,7 @@ SENF_WRAP_EXC(std::bad_cast) SENF_WRAP_EXC(somelib::FooException) } - \endcode + \endcode The re-thrown exception can then be caught as std::bad_cast or as senf::ExceptionMixin as needed. It is safe, to wrap an exception twice (the macro will detect this case). \code @@ -147,7 +147,7 @@ namespace senf { /**< Adds \a text to the description text. */ protected: - explicit ExceptionMixin(std::string const & description = ""); + explicit ExceptionMixin(std::string const & description = ""); ///< Initialize exception with string /**< \a description is the initial error description string. This should probably be a string constant @@ -181,12 +181,12 @@ namespace senf { virtual char const * what() const throw(); ///< get exception description and backtrace if available /**< get description of the exception (message()) and backtrace - information if SENF is compiled with \c SENF_DEBUG */ + information if SENF is compiled with \c SENF_DEBUG */ protected: explicit Exception(std::string const & description = ""); }; - + /** \brief Wrapper for standard non-senf exceptions This class wraps an exception of type \a BaseException and adds functionality from @@ -229,7 +229,7 @@ namespace senf { exception description string. This operator allows to use Exception instances like streams. The conversion is performed using boost::lexical_cast and is - therefor identical to a streaming operation. + therefor identical to a streaming operation. \see \ref exception */ @@ -250,7 +250,7 @@ namespace senf { \code // Standard usage: Take \c errno from environment - throw senf::SystemException("::open()") + throw senf::SystemException("::open()") << " while opening configuration file: " << filename; // You may however explicitly specify the errno value @@ -278,9 +278,9 @@ namespace senf { class SystemException : public Exception { public: - /////////////////////////////////////////////////////////////////////////// + //-//////////////////////////////////////////////////////////////////////// ///\name Structors and default members - ///@{ + //\{ explicit SystemException(std::string const & descr = "" _SENF_EXC_DEBUG_ARGS); explicit SystemException(int code _SENF_EXC_DEBUG_ARGS); @@ -288,21 +288,19 @@ namespace senf { virtual ~SystemException() throw(); - ///@} - /////////////////////////////////////////////////////////////////////////// + //\} + //-//////////////////////////////////////////////////////////////////////// int errorNumber() const; ///< Error code (\c errno number) char const * errorString() const; ///< Error string (\c strerror() value) - bool anyOf(int c0, int c1=0, int c2=0, int c3=0, int c4=0, int c5=0, - int c6=0, int c7=0, int c8=0, int c9=0); + bool anyOf(int c0, int c1=0, int c2=0, int c3=0, int c4=0, int c5=0, + int c6=0, int c7=0, int c8=0, int c9=0) const; ///< \c true, if errorNumber() is one of \a c0 ... \a c9 - - private: void init(std::string const & descr, int code _SENF_EXC_DEBUG_ARGS_ND); - + int code_; }; @@ -316,7 +314,7 @@ namespace senf { } -///////////////////////////////hh.e//////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// #include "Exception.cci" //#include "Exception.ct" #include "Exception.cti" @@ -332,4 +330,4 @@ namespace senf { // compile-command: "scons -u test" // comment-column: 40 // End: - +