X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Utils%2FException.cci;h=3366fe23467d20109a35c3d00a3e941169c142ea;hb=bd9f9d3fd6fbcff0112a7bf48ab9284da9576b11;hp=b745f8056ee7e6625eb5cda9faf2434322629092;hpb=17d44437f7fb8ee68a96ed55fc327c746c161142;p=senf.git diff --git a/Utils/Exception.cci b/Utils/Exception.cci index b745f80..3366fe2 100644 --- a/Utils/Exception.cci +++ b/Utils/Exception.cci @@ -28,24 +28,37 @@ ///////////////////////////////cci.p/////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// -// senf::Exception +// senf::ExceptionMixin -prefix_ senf::Exception::Exception(std::string const & description) - : message_(description) -{} +prefix_ senf::ExceptionMixin::ExceptionMixin(std::string const & description) + : what_(description), + message_(description) +{ +#ifdef SENF_DEBUG + addBacktrace(); +#endif +} -prefix_ std::string const & senf::Exception::message() +prefix_ std::string const & senf::ExceptionMixin::message() const { return message_; } -prefix_ void senf::Exception::append(std::string text) +prefix_ void senf::ExceptionMixin::append(std::string text) { message_ += text; + what_ += text; } /////////////////////////////////////////////////////////////////////////// +// senf::Exception + +prefix_ senf::Exception::Exception(std::string const & description) + : ExceptionMixin(description) +{} + +/////////////////////////////////////////////////////////////////////////// // senf::SystemException prefix_ senf::SystemException::SystemException(std::string const & descr _SENF_EXC_DEBUG_ARGS_ND)