X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Ffatal.hpp;h=8b810e7bb44189106ed4c4658bbfafaf830ab557;hb=aaafc64fc6b893f50861a53f7e7a8c735827bf49;hp=7a8ce5161491173670359ed67ca08dad9a807478;hpb=85b7bde8fee1a43ace784690188e2f4c62f89825;p=awesomized%2Flibmemcached diff --git a/libtest/fatal.hpp b/libtest/fatal.hpp index 7a8ce516..8b810e7b 100644 --- a/libtest/fatal.hpp +++ b/libtest/fatal.hpp @@ -38,74 +38,16 @@ #include -#ifndef __PRETTY_FUNCTION__ -#define __PRETTY_FUNCTION__ __func__ -#endif - -#define YATL_STRINGIFY(x) #x -#define YATL_TOSTRING(x) YATL_STRINGIFY(x) -#define YATL_AT __FILE__ ":" YATL_TOSTRING(__LINE__) -#define YATL_AT_PARAM __func__, AT -#define YATL_UNIQUE __FILE__ ":" YATL_TOSTRING(__LINE__) "_unique" -#define YATL_UNIQUE_FUNC_NAME __FILE__ ":" YATL_TOSTRING(__LINE__) "_unique_func" - -#define LIBYATL_DEFAULT_PARAM __FILE__, __LINE__, __PRETTY_FUNCTION__ - namespace libtest { -class fatal : std::runtime_error -{ -public: - fatal(const char *file, int line, const char *func, const char *format, ...); - - const char* what() const throw() - { - return _error_message; - } - - const char* mesg() const throw() - { - return _error_message; - } - - // The following are just for unittesting the exception class - static bool is_disabled(); - static void disable(); - static void enable(); - static uint32_t disabled_counter(); - static void increment_disabled_counter(); - - int line() - { - return _line; - } - - const char* file() - { - return _file; - } - - const char* func() - { - return _func; - } - -private: - char _error_message[BUFSIZ]; - char _mesg[BUFSIZ]; - int _line; - const char* _file; - const char* _func; -}; - class disconnected : std::runtime_error { public: - disconnected(const char *file, int line, const char *func, const char *instance, const in_port_t port, const char *format, ...); + disconnected(const char *file, int line, const char *func, const std::string&, const in_port_t port, ...); const char* what() const throw() { - return _error_message; + return &_error_message[0]; } // The following are just for unittesting the exception class @@ -139,8 +81,4 @@ private: const char* _func; }; - } // namespace libtest - -#define fatal_message(__mesg) throw libtest::fatal(LIBYATL_DEFAULT_PARAM, "%s", __mesg) -#define fatal_assert(__assert) if((__assert)) {} else { throw libtest::fatal(LIBYATL_DEFAULT_PARAM, "%s", #__assert); }