#include <cexception.hpp>
Граф наследования:UnknownExternalCException:

Открытые члены | |
| virtual | ~UnknownExternalCException () |
| Виртуальный деструктор. | |
| virtual std::string | getClassName () const |
| Возвращает имя класса-исключения. | |
| virtual std::string | toString () const |
| Возвращает "полное описание" исключения, включающее имя класса и место возникновения. | |
| std::string | toStringAll () const |
| Возвращает "полное описание" текущего исключения и всех исключений, вложенных в него. | |
| template<class E> E * | is () |
| Удобная функция для проверки является ли текущее исключение исключением класса E (или производным от него). | |
| template<class E> const E * | is () const |
| Удобная функция для проверки является ли текущее константное исключение исключением класса E (или производным от него). | |
| void * | operator new (size_t size) |
| Переопределенный для ускорения работы распределитель памяти. | |
| void | operator delete (void *ptr, size_t size) |
| Переопределенный для ускорения работы распределитель памяти. | |
Открытые атрибуты | |
| const std::string | typeName |
| Имя типа инкапсулируемого исключения для более точной диагностики. | |
| const FileLine | location |
| место возникновения исключения. | |
| const std::string | message |
| сообщение | |
| const sh_ptr< CException > | nested |
| указатель на вложенное исключение, причину текущего, или 0 | |
Защищенные члены | |
| UnknownExternalCException (const FileLine &loc, const std::string &msg, const std::string &tname, sh_ptr< CException > nest) | |
| Защищенный конструктор. | |
Друзья | |
| sh_ptr< CException > | newUnknownExternalCException (const FileLine &loc, const std::string &msg, const std::string &tname, sh_ptr< CException > nest=sh_ptr< CException >()) |
| Предназначена для создания объектов вместо конструктора. | |
| sh_ptr< CException > | newExternalCException (const FileLine &loc, const std::string &msg, const std::string &tname, sh_ptr< CException > nest=sh_ptr< CException >()) |
| Предназначена для создания объектов вместо конструктора. | |
| sh_ptr< CException > | newCException (const FileLine &loc, const std::string &msg, sh_ptr< CException > nest=sh_ptr< CException >()) |
| Предназначена для создания объектов вместо конструктора. | |
См. определение в файле cexception.hpp строка 232
|
||||||||||||||||||||
|
Защищенный конструктор. Для создания объектов необходимо использовать функцию newUnknownExternalCException(). См. определение в файле cexception.cpp строка 91
00092 : 00093 ExternalCException(loc, msg, tname, nest) 00094 { 00095 } |
|
|
Виртуальный деструктор.
См. определение в файле cexception.cpp строка 97
00098 {
00099 }
|
|
|
Возвращает имя класса-исключения. Должна обязательно переопределяться в производных классах. Переопределяет метод предка ExternalCException. См. определение в файле cexception.cpp строка 101
00102 {
00103 return "UnknownExternalCException";
00104 }
|
|
|||||||||
|
Удобная функция для проверки является ли текущее константное исключение исключением класса E (или производным от него). Возвращает ненулевой указатель запрашиваемого типа в случае положительного ответа. См. определение в файле cexception.hpp строка 123
00123 { return dynamic_cast<const E*>(this); }
|
|
|||||||||
|
Удобная функция для проверки является ли текущее исключение исключением класса E (или производным от него). Возвращает ненулевой указатель запрашиваемого типа в случае положительного ответа. См. определение в файле cexception.hpp строка 115
00115 { return dynamic_cast<E*>(this); }
|
|
||||||||||||
|
Переопределенный для ускорения работы распределитель памяти. Корректно работает и с производными классами. См. определение в файле cexception.hpp строка 138 Перекрестные ссылки sized_alloc::free().
00139 {
00140 sized_alloc::free(ptr, size);
00141 }
|
|
|
Переопределенный для ускорения работы распределитель памяти. Корректно работает и с производными классами. См. определение в файле cexception.hpp строка 129 Перекрестные ссылки sized_alloc::alloc().
00130 {
00131 return sized_alloc::alloc(size);
00132 }
|
|
|
Возвращает "полное описание" исключения, включающее имя класса и место возникновения. Должна переопределяться производными классами, имеющими дополнительные данные. Переопределяет метод предка CException. См. определение в файле cexception.cpp строка 70 Перекрестные ссылки ExternalCException::getClassName(), CException::location, CException::message и ExternalCException::typeName.
|
|
|
Возвращает "полное описание" текущего исключения и всех исключений, вложенных в него. Фактически, результаты применения toString() к каждому из исключений объединяются в одну строку. См. определение в файле cexception.cpp строка 42 Перекрестные ссылки sh_ptr< CException >::get(), CException::nested и CException::toString().
00043 {
00044 string ret;
00045 ret.reserve(1024);
00046
00047 for (const CException* ptr=this; ptr; ptr=ptr->nested.get()) {
00048 ret.append(ptr->toString());
00049 ret.push_back('\n');
00050 }
00051
00052 return ret;
00053 }
|
|
||||||||||||||||
|
Предназначена для создания объектов вместо конструктора. Создает объект в свободной памяти по переданным месту исключения, сообщению и, возможно, вложенному исключению. Для передачи объекта loc удобно использовать макрос _FLINE_. См. определение в файле cexception.hpp строка 281
00283 {
00284 return sh_ptr<CException>(new CException(loc, msg, nest));
00285 }
|
|
||||||||||||||||||||
|
Предназначена для создания объектов вместо конструктора. Создает объект по переданным месту исключения, сообщению, имени типа и, возможно, вложенному исключению. Для передачи объекта loc удобно использовать макрос _FLINE_. |
|
||||||||||||||||||||
|
Предназначена для создания объектов вместо конструктора. Создает объект по переданным месту исключения, сообщению, имени типа и, возможно, вложенному исключению. Для передачи объекта loc удобно использовать макрос _FLINE_. |
|
|
место возникновения исключения.
См. определение в файле cexception.hpp строка 69 Используется в ExternalCException::toString() и CException::toString(). |
|
|
сообщение
См. определение в файле cexception.hpp строка 71 Используется в ExternalCException::toString() и CException::toString(). |
|
|
указатель на вложенное исключение, причину текущего, или 0
См. определение в файле cexception.hpp строка 73 Используется в CException::toStringAll(). |
|
|
Имя типа инкапсулируемого исключения для более точной диагностики. Зачастую, это просто результат вызова std::type_info::name(). См. определение в файле cexception.hpp строка 162 Используется в ExternalCException::toString(). |
1.3