#include <exception.hpp>
Public Member Functions | |
virtual sh_text | getClassName () const =0 |
virtual sh_text | toText () const |
template<class E> | |
E * | is () |
template<class E> | |
const E * | is () const |
virtual void | destroy (mem_pool &mp2) |
Public Attributes | |
const FileLine | location |
const sh_text | message |
const shException | nested |
Protected Member Functions | |
MsgException (const FileLine &loc, const ch_rng &msg, shException nest) | |
void | operator delete (void *ptr, size_t size) |
Static Protected Member Functions | |
template<class T> | |
static void | destroy_this (T *ptr, mem_pool &mp2) |
Definition at line 98 of file exception.hpp.
ders::MsgException::MsgException | ( | const FileLine & | loc, | |
const ch_rng & | msg, | |||
shException | nest | |||
) | [protected] |
virtual sh_text ders::MsgException::getClassName | ( | ) | const [pure virtual] |
sh_text ders::Exception::toText | ( | ) | const [virtual, inherited] |
Reimplemented in ders::ErrorException, ders::ExitMsgException, ders::ExternException, and ders::FileErrorException.
Definition at line 68 of file exception.cpp.
00069 { 00070 return text_buf(getClassName())+" ["+location.file+":"+location.line+ 00071 "], message: "+message; 00072 }
E * ders::Exception::is | ( | ) | [inline, inherited] |
const E * ders::Exception::is | ( | ) | const [inline, inherited] |
virtual void ders::Exception::destroy | ( | mem_pool & | mp2 | ) | [inline, virtual, inherited] |
Implements ders::destroyable.
Reimplemented in ders::ErrorException, ders::ExitMsgException, ders::StdExternException, ders::UnknExternException, and ders::FileErrorException.
Definition at line 87 of file exception.hpp.
00087 { destroy_this(this, mp2); }
void ders::destroyable::destroy_this | ( | T * | ptr, | |
mem_pool & | mp2 | |||
) | [inline, static, protected, inherited] |
Definition at line 47 of file destroy.hpp.
00048 { 00049 assert(typeid(*ptr)==typeid(T)); 00050 00051 ptr->~T(); 00052 mp2.deallocate(ptr, sizeof(T)); 00053 }
void ders::destroyable::operator delete | ( | void * | ptr, | |
size_t | size | |||
) | [inline, protected, inherited] |
const FileLine ders::Exception::location [inherited] |
Definition at line 77 of file exception.hpp.
const sh_text ders::Exception::message [inherited] |
Definition at line 78 of file exception.hpp.
const shException ders::Exception::nested [inherited] |
Definition at line 79 of file exception.hpp.