X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Utils%2FException.hh;h=a91b157d20c3682634d6556dac6a56636abb3039;hb=b89e3166f7680755683dccee5e48cb3a820185c0;hp=42e1326fbca957754412da8b56985c5f48eb9953;hpb=412024ed31a4ab4eaea7a4165a434f8efebee325;p=senf.git diff --git a/Utils/Exception.hh b/Utils/Exception.hh index 42e1326..a91b157 100644 --- a/Utils/Exception.hh +++ b/Utils/Exception.hh @@ -140,9 +140,9 @@ namespace senf { class ExceptionMixin { public: - std::string const & message() const; + std::string const & message() const; ///< get exception description - void append(std::string text); ///< Extend exception description + void append(std::string text); ///< Extend exception description /**< Adds \a text to the description text. */ protected: @@ -152,7 +152,7 @@ namespace senf { string. This should probably be a string constant describing the exception for most derived exceptions. */ - + std::string what_; private: #ifdef SENF_DEBUG void addBacktrace(); @@ -177,6 +177,9 @@ namespace senf { virtual ~Exception() throw(); 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 */ protected: explicit Exception(std::string const & description = ""); @@ -261,7 +264,7 @@ namespace senf { the exception description: \code // Standard usage: Take \c errno from environment - SENF_THROW_SYSTEM_EXCEPTION() + SENF_THROW_SYSTEM_EXCEPTION("::open()") << " while opening configuration file: " << filename; // You may however explicitly specify the errno value @@ -299,7 +302,6 @@ namespace senf { void init(std::string const & descr, int code _SENF_EXC_DEBUG_ARGS_ND); int code_; - std::string what_; }; # ifdef SENF_DEBUG