Collaboration diagram for Exceptions Hierarchy:
|
Classes | |
| class | CException |
| CException --. More... | |
| class | CExceptionReporter |
| CExceptionReporter --. More... | |
| class | CExceptionReporterStream |
| CExceptionReporterStream --. More... | |
| class | CCoreException |
| CCoreException --. More... | |
| class | CErrnoAdapt |
| class | CErrnoTemplExceptionEx< TBase, PErrCode, PErrStr > |
| CErrnoTemplExceptionEx --. More... | |
| class | CErrnoTemplException< TBase > |
| CErrnoTemplException --. More... | |
Defines | |
| #define | THROWS_NONE |
| Define THROWS macros for C++ exception specification. | |
| #define | THROWS(x) |
| #define | ABORT_ON_THROW "ABORT_ON_THROW" |
| ABORT_ON_THROW controls if program should be aborted. | |
| #define | RETHROW_TRACE |
| Rethrow trace. | |
| #define | THROW0_TRACE(exception_object) |
| Throw trace. | |
| #define | THROW0p_TRACE(exception_object) |
| Throw trace. | |
| #define | THROW0np_TRACE(exception_object) |
| Throw trace. | |
| #define | THROW1_TRACE(exception_class, exception_arg) |
| Throw trace. | |
| #define | THROW1p_TRACE(exception_class, exception_arg) |
| Throw trace. | |
| #define | THROW1np_TRACE(exception_class, exception_arg) |
| Throw trace. | |
| #define | THROW_TRACE(exception_class, exception_args) |
| Throw trace. | |
| #define | THROWp_TRACE(exception_class, exception_args) |
| Throw trace. | |
| #define | THROWnp_TRACE(exception_class, exception_args) |
| Throw trace. | |
| #define | STD_CATCH(message) |
| Standard handling of "exception"-derived exceptions. | |
| #define | STD_CATCH_ALL(message) |
| Standard handling of "exception"-derived exceptions; catches non-standard exceptions and generates "unknown exception" for all other exceptions. | |
| #define | NCBI_CATCH(message) |
| Catch CExceptions as well This macro is deprecated - use *_X or *_XX variant instead of it. | |
| #define | NCBI_CATCH_ALL(message) |
| This macro is deprecated - use *_X or *_XX variant instead of it. | |
| #define | STD_CATCH_X(err_subcode, message) STD_CATCH_XX(NCBI_USE_ERRCODE_X, err_subcode, message) |
| Standard handling of "exception"-derived exceptions with default error code and given error subcode placed in diagnostics. | |
| #define | STD_CATCH_ALL_X(err_subcode, message) STD_CATCH_ALL_XX(NCBI_USE_ERRCODE_X, err_subcode, message) |
| Standard handling of "exception"-derived exceptions; catches non-standard exceptions and generates "unknown exception" for all other exceptions. | |
| #define | NCBI_CATCH_X(err_subcode, message) NCBI_CATCH_XX(NCBI_USE_ERRCODE_X, err_subcode, message) |
| Catch CExceptions as well with default error code and given error subcode placed in diagnostics. | |
| #define | NCBI_CATCH_ALL_X(err_subcode, message) NCBI_CATCH_ALL_XX(NCBI_USE_ERRCODE_X, err_subcode, message) |
| #define | STD_CATCH_XX(err_name, err_subcode, message) |
| Standard handling of "exception"-derived exceptions with given error code name and given error subcode placed in diagnostics. | |
| #define | STD_CATCH_ALL_XX(err_name, err_subcode, message) |
| Standard handling of "exception"-derived exceptions; catches non-standard exceptions and generates "unknown exception" for all other exceptions. | |
| #define | NCBI_CATCH_XX(err_name, err_subcode, message) |
| Catch CExceptions as well with given error code name and given error subcode placed in diagnostics. | |
| #define | NCBI_CATCH_ALL_XX(err_name, err_subcode, message) |
| #define | FORMAT(message) CNcbiOstrstreamToString(static_cast<CNcbiOstrstream&>(CNcbiOstrstream().flush() << message)) |
| Format message using iostreams library. | |
| #define | NCBI_EXCEPTION_VAR_EX(name, prev_exception_ptr,exception_class, err_code, message) |
| Create an exception instance to be thrown later, given the exception class, previous exception pointer, error code and message string. | |
| #define | NCBI_EXCEPTION_VAR(name, exception_class, err_code, message) NCBI_EXCEPTION_VAR_EX(name, 0, exception_class, err_code, message) |
| Create an instance of the exception to be thrown later. | |
| #define | NCBI_EXCEPTION_THROW(exception_var) throw (exception_var) |
| Throw an existing exception object. | |
| #define | NCBI_EXCEPTION_EMPTY_NAME |
| #define | NCBI_EXCEPTION(exception_class, err_code, message) |
| Generic macro to make an exception, given the exception class, error code and message string. | |
| #define | NCBI_THROW(exception_class, err_code, message) NCBI_EXCEPTION_THROW(NCBI_EXCEPTION(exception_class, err_code, message)) |
| Generic macro to throw an exception, given the exception class, error code and message string. | |
| #define | NCBI_THROW_FMT(exception_class, err_code, message) NCBI_THROW(exception_class, err_code, FORMAT(message)) |
| The same as NCBI_THROW but with message processed as output to ostream. | |
| #define | NCBI_EXCEPTION_EX(prev_exception, exception_class, err_code, message) |
| Generic macro to make an exception, given the exception class, previous exception , error code and message string. | |
| #define | NCBI_RETHROW(prev_exception, exception_class, err_code, message) throw NCBI_EXCEPTION_EX(prev_exception, exception_class, err_code, message) |
| Generic macro to re-throw an exception. | |
| #define | NCBI_RETHROW_FMT(prev_exception, exception_class, err_code, message) NCBI_RETHROW(prev_exception, exception_class, err_code, FORMAT(message)) |
| The same as NCBI_RETHROW but with message processed as output to ostream. | |
| #define | NCBI_RETHROW_SAME(prev_exception, message) |
| Generic macro to re-throw the same exception. | |
| #define | NCBI_REPORT_EXCEPTION(title, ex) CExceptionReporter::ReportDefault(DIAG_COMPILE_INFO,title,ex,eDPF_Default) |
| Generate a report on the exception. | |
| #define | NCBI_REPORT_EXCEPTION_X(err_subcode, title, ex) NCBI_REPORT_EXCEPTION_XX(NCBI_USE_ERRCODE_X, err_subcode, title, ex) |
| Generate a report on the exception with default error code and given subcode. | |
| #define | NCBI_REPORT_EXCEPTION_XX(err_name, err_subcode, title, ex) |
| Generate a report on the exception with default error code and given subcode. | |
| #define | NCBI_EXCEPTION_DEFAULT_THROW(exception_class) |
| #define | NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_COMMON(exception_class, base_class) |
| #define | NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION(exception_class, base_class) |
| Helper macro for default exception implementation. | |
| #define | NCBI_EXCEPTION_DEFAULT(exception_class, base_class) |
| To help declare new exception class. | |
| #define | NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_TEMPL(exception_class, base_class) |
| Helper macro added to support templatized exceptions. | |
| #define | NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_TEMPL_ERRNO(exception_class, base_class) |
| Helper macro added to support errno based templatized exceptions. | |
| #define | EXCEPTION_VIRTUAL_BASE virtual |
| Exception bug workaround for GCC version less than 3.00. | |
| #define | NCBI_ERRNO_CODE_WRAPPER NCBI_NS_NCBI::CErrnoAdapt::GetErrCode |
| #define | NCBI_ERRNO_STR_WRAPPER NCBI_NS_NCBI::CErrnoAdapt::GetErrCodeString |
| #define | NCBI_EXCEPTION2_VAR(name, exception_class, err_code, message, extra) |
| Create an instance of the exception with one additional parameter. | |
| #define | NCBI_EXCEPTION2(exception_class, err_code, message, extra) |
| Generic macro to make an exception with one additional parameter, given the exception class, error code and message string. | |
| #define | NCBI_THROW2(exception_class, err_code, message, extra) throw NCBI_EXCEPTION2(exception_class, err_code, message, extra) |
| Throw exception with extra parameter. | |
| #define | NCBI_RETHROW2(prev_exception, exception_class, err_code, message, extra) |
| Re-throw exception with extra parameter. | |
| #define | NCBI_EXCEPTION_DEFAULT2(exception_class, base_class, extra_type) |
| Define exception default with one additional parameter. | |
Typedefs | |
| typedef int(* | TErrorCode )(void) |
| Define function type for "error code" function. | |
| typedef const char *(* | TErrorStr )(int errnum) |
| Define function type for "error str" function. | |
Functions | |
| void | SetThrowTraceAbort (bool abort_on_throw_trace) |
| Specify whether to call "abort()" inside the DoThrowTraceAbort(). | |
| void | DoThrowTraceAbort (void) |
| "abort()" the program if set by SetThrowTraceAbort() or $ABORT_ON_THROW. | |
| void | DoDbgPrint (const CDiagCompileInfo &info, const char *message) |
| Print the specified debug message. | |
| void | DoDbgPrint (const CDiagCompileInfo &info, const string &message) |
| Print the specified debug message. | |
| void | DoDbgPrint (const CDiagCompileInfo &info, const char *msg1, const char *msg2) |
| Print the specified debug messages. | |
| template<typename T> | |
| const T & | DbgPrint (const CDiagCompileInfo &info, const T &e, const char *e_str) |
| Templated function for printing debug message. | |
| const char * | DbgPrint (const CDiagCompileInfo &info, const char *e, const char *) |
| Print debug message for "const char*" object. | |
| char * | DbgPrint (const CDiagCompileInfo &info, char *e, const char *) |
| Print debug message for "char*" object. | |
| const string & | DbgPrint (const CDiagCompileInfo &info, const string &e, const char *) |
| Print debug message for "std::string" object. | |
| template<typename T> | |
| const T & | DbgPrintP (const CDiagCompileInfo &info, const T &e, const char *e_str) |
| Create diagnostic stream for printing specified message and "abort()" the program if set by SetThrowTraceAbort() or $ABORT_ON_THROW. | |
| template<typename T> | |
| const T & | DbgPrintNP (const CDiagCompileInfo &info, const T &e, const char *e_str) |
| Create diagnostic stream for printing specified message. | |
| template<class TTo, class TFrom> | |
| const TTo * | UppermostCast (const TFrom &from) |
| Return valid pointer to uppermost derived class only if "from" is _really_ the object of the desired type. | |
|
|
ABORT_ON_THROW controls if program should be aborted.
Definition at line 78 of file ncbiexpt.hpp. Referenced by DoThrowTraceAbort(). |
|
|
Exception bug workaround for GCC version less than 3.00. GCC compiler v.2.95 has a bug: one should not use virtual base class in exception declarations - a program crashes when deleting such an exception (this is fixed in newer versions of the compiler). Definition at line 927 of file ncbiexpt.hpp. |
|
|
Format message using iostreams library. This macro returns an object convertible to std::string. Definition at line 513 of file ncbiexpt.hpp. Referenced by CNcbiTestTreeElement::x_AddToMustLeft(), and CNcbiTestTreeElement::x_AddToMustRight(). |
|
|
Value: catch (NCBI_NS_NCBI::CException& e) { \ NCBI_REPORT_EXCEPTION(message, e); \ } \ STD_CATCH(message)
Definition at line 419 of file ncbiexpt.hpp. |
|
|
Value: catch (NCBI_NS_NCBI::CException& e) { \ NCBI_REPORT_EXCEPTION(message, e); \ } \ STD_CATCH_ALL(message)
Definition at line 426 of file ncbiexpt.hpp. Referenced by CBlobStorage_NetCache::~CBlobStorage_NetCache(). |
|
|
|
Value: catch (NCBI_NS_NCBI::CException& e) { \ NCBI_REPORT_EXCEPTION_XX(err_name, err_subcode, message, e); \ } \ STD_CATCH_ALL_XX(err_name, err_subcode, message)
Definition at line 500 of file ncbiexpt.hpp. |
|
|
Catch CExceptions as well with default error code and given error subcode placed in diagnostics.
Definition at line 454 of file ncbiexpt.hpp. Referenced by CThread::Wrapper(). |
|
|
Value: catch (NCBI_NS_NCBI::CException& e) { \ NCBI_REPORT_EXCEPTION_XX(err_name, err_subcode, message, e); \ } \ STD_CATCH_XX(err_name, err_subcode, message)
Definition at line 493 of file ncbiexpt.hpp. |
|
|
Definition at line 1063 of file ncbiexpt.hpp. |
|
|
Definition at line 1064 of file ncbiexpt.hpp. |
|
|
Value: NCBI_EXCEPTION_VAR(NCBI_EXCEPTION_EMPTY_NAME, \ exception_class, err_code, message)
Definition at line 537 of file ncbiexpt.hpp. |
|
|
Value: NCBI_EXCEPTION2_VAR(NCBI_EXCEPTION_EMPTY_NAME, \ exception_class, err_code, message, extra)
Definition at line 1263 of file ncbiexpt.hpp. |
|
|
Value: exception_class name(DIAG_COMPILE_INFO, 0, \ exception_class::err_code, (message), (extra) )
Definition at line 1257 of file ncbiexpt.hpp. |
|
|
Value: public: \ exception_class(const CDiagCompileInfo& info, \ const CException* prev_exception, \ EErrCode err_code,const string& message, \ EDiagSev severity = eDiag_Error) \ : base_class(info, prev_exception, \ (base_class::EErrCode) CException::eInvalid, (message)) \ NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION(exception_class, base_class) This can be used ONLY if the derived class does not have any additional (non-standard) data members. Definition at line 873 of file ncbiexpt.hpp. Referenced by BEGIN_SCOPE(). |
|
|
Value: public: \ exception_class(const CDiagCompileInfo &info, \ const CException* prev_exception, \ EErrCode err_code,const string& message, \ extra_type extra_param, EDiagSev severity = eDiag_Error) \ : base_class(info, prev_exception, \ (base_class::EErrCode) CException::eInvalid, \ (message), extra_param, severity) \ NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION(exception_class, base_class) Required to define exception default with one additional parameter (e.g. derived from CParseException). Definition at line 1287 of file ncbiexpt.hpp. |
|
|
Value: { \
x_Init(info, message, prev_exception, severity); \
x_InitErrCode((CException::EErrCode) err_code); \
} \
NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_COMMON(exception_class, base_class) \
private: \
/* for the sake of semicolon at the end of macro...*/ \
static void xx_unused_##exception_class(void)
Definition at line 858 of file ncbiexpt.hpp. |
|
|
Value: exception_class(const exception_class& other) \ : base_class(other) \ { \ x_Assign(other); \ } \ public: \ virtual ~exception_class(void) throw() {} \ virtual const char* GetType(void) const {return #exception_class;} \ typedef int TErrCode; \ TErrCode GetErrCode(void) const \ { \ return typeid(*this) == typeid(exception_class) ? \ (TErrCode) this->x_GetErrCode() : \ (TErrCode) CException::eInvalid; \ } \ NCBI_EXCEPTION_DEFAULT_THROW(exception_class) \ protected: \ exception_class(void) {} \ virtual const CException* x_Clone(void) const \ { \ return new exception_class(*this); \ } \ Definition at line 830 of file ncbiexpt.hpp. |
|
|
Value: { \
this->x_Init(info, message, prev_exception, severity); \
this->x_InitErrCode((typename CException::EErrCode) err_code); \
} \
NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_COMMON(exception_class, base_class)
GCC starting from 3.2.2 warns about implicit typenames - this macro fixes the warning. Definition at line 888 of file ncbiexpt.hpp. |
|
|
Value: { \
this->x_Init(info, message, prev_exception, severity); \
this->x_InitErrCode((typename CException::EErrCode) err_code); \
} \
NCBI_EXCEPTION_DEFAULT_IMPLEMENTATION_COMMON(exception_class, base_class) \
public: \
virtual const char* GetErrCodeString(void) const \
{ \
switch (GetErrCode()) { \
case CParent::eErrno: return "eErrno"; \
default: return CException::GetErrCodeString(); \
} \
}
Definition at line 897 of file ncbiexpt.hpp. Referenced by CErrnoTemplException< CCgiException >::x_Clone(). |
|
|
Value: virtual void Throw(void) const \ { \ this->x_ThrowSanityCheck(typeid(exception_class), #exception_class); \ throw *this; \ } Definition at line 823 of file ncbiexpt.hpp. |
|
|
Definition at line 532 of file ncbiexpt.hpp. |
|
|
Value: NCBI_EXCEPTION_VAR_EX(NCBI_EXCEPTION_EMPTY_NAME, &(prev_exception), \ exception_class, err_code, message)
Definition at line 552 of file ncbiexpt.hpp. |
|
|
Throw an existing exception object.
Definition at line 529 of file ncbiexpt.hpp. Referenced by CCgiApplication::VerifyCgiContext(). |
|
|
Create an instance of the exception to be thrown later.
Definition at line 525 of file ncbiexpt.hpp. Referenced by CCgiApplication::VerifyCgiContext(). |
|
|
Value: exception_class name(DIAG_COMPILE_INFO, \ prev_exception_ptr, exception_class::err_code, (message))
Definition at line 520 of file ncbiexpt.hpp. |
|
|
Generate a report on the exception.
Definition at line 570 of file ncbiexpt.hpp. |
|
|
Generate a report on the exception with default error code and given subcode.
Definition at line 575 of file ncbiexpt.hpp. Referenced by CNcbiApplication::x_TryMain(), CDll::~CDll(), and CFileLock::~CFileLock(). |
|
|
Value: NCBI_CHECK_ERR_SUBCODE_X_NAME(err_name, err_subcode); \ CExceptionReporter::ReportDefaultEx( \ NCBI_ERRCODE_X_NAME(err_name), err_subcode, \ DIAG_COMPILE_INFO, title, ex, eDPF_Default)
Definition at line 580 of file ncbiexpt.hpp. |
|
|
Generic macro to re-throw an exception.
Definition at line 557 of file ncbiexpt.hpp. Referenced by CArg_Boolean::CArg_Boolean(), CArg_Double::CArg_Double(), CArg_Int8::CArg_Int8(), CBlastRPSInfo::CBlastRPSInfo(), CRpsMmappedFile::CRpsMmappedFile(), CAppJobDispatcher::DeleteJob(), CCgiRequest::GetSession(), CReader::OpenInitialConnection(), CId2Reader::x_InitConnection(), CId1Reader::x_ReceiveReply(), CId1Reader::x_SendRequest(), and CAppJobDispatcher::x_StartJob(). |
|
|
Value: throw exception_class(DIAG_COMPILE_INFO, \ &(prev_exception), exception_class::err_code, (message), (extra)) Required to re-throw exceptions with one additional parameter (e.g. positional information for CParseException). Definition at line 1278 of file ncbiexpt.hpp. |
|
|
The same as NCBI_RETHROW but with message processed as output to ostream.
Definition at line 561 of file ncbiexpt.hpp. |
|
|
Value: do { prev_exception.AddBacklog(DIAG_COMPILE_INFO, message, prev_exception.GetSeverity()); \ throw; } while (0)
Definition at line 565 of file ncbiexpt.hpp. Referenced by CEnumeratedTypeInfo::CopyEnum(), CCodeGenerator::ExternalResolve(), CMapTypeStrings::GetDestructionCode(), CListTypeStrings::GetDestructionCode(), CSetTypeStrings::GetDestructionCode(), CObjectIStream::HandleEOF(), DTDParser::Module(), ASNParser::ModuleBody(), CEnumeratedTypeInfo::ReadEnum(), CCodeGenerator::ResolveInAnyModule(), CReferenceDataType::ResolveOrThrow(), CSafeStaticRef< T >::Set(), CSafeStaticPtr< T >::Set(), CEnumeratedTypeInfo::SkipEnum(), CEnumeratedTypeInfo::WriteEnum(), CSafeStaticRef< T >::x_Init(), CSafeStaticPtr< T >::x_Init(), and CNcbiApplication::x_TryMain(). |
|
|
|
|
|
Value: do { \ _TRACE("EXCEPTION: re-throw"); \ NCBI_NS_NCBI::DoThrowTraceAbort(); \ throw; \ } while(0) Reason for do {...} while in macro definition is to permit a natural syntax usage when a user wants to write something like: if (expression) RETHROW_TRACE; else do_something_else; Example:
Definition at line 186 of file ncbiexpt.hpp. |
|
|
Value: catch (NCBI_NS_STD::exception& e) { \ NCBI_NS_NCBI::CNcbiDiag() \ << NCBI_NS_NCBI::Error \ << "[" << message << "] Exception: " << e.what(); \ } This macro is deprecated - use *_X or *_XX variant instead of it. Definition at line 399 of file ncbiexpt.hpp. |
|
|
Value: STD_CATCH(message) \ catch (...) { \ NCBI_NS_NCBI::CNcbiDiag() \ << NCBI_NS_NCBI::Error \ << "[" << message << "] Unknown exception"; \ } This macro is deprecated - use *_X or *_XX variant instead of it. Definition at line 409 of file ncbiexpt.hpp. Referenced by CConversionApp::Run(). |
|
|
Standard handling of "exception"-derived exceptions; catches non-standard exceptions and generates "unknown exception" for all other exceptions. With default error code and given error subcode placed in diagnostics
Definition at line 447 of file ncbiexpt.hpp. Referenced by CPushback_Streambuf::CPushback_Streambuf(), CThreadPool_ThreadImpl::OnExit(), CSocketRequest::Process(), CServerConnectionRequest::Process(), s_LoadGuide(), CGFF3_Formatter::x_FormatAlignment(), and CSQLITE_Statement::~CSQLITE_Statement(). |
|
|
Value: STD_CATCH_XX(err_name, err_subcode, message) \ catch (...) { \ NCBI_NS_NCBI::CNcbiDiag() \ << ErrCode(NCBI_ERRCODE_X_NAME(err_name), err_subcode) \ << NCBI_NS_NCBI::Error \ << "[" << message << "] Unknown exception"; \ } With given error code name and given error subcode placed in diagnostics
Definition at line 480 of file ncbiexpt.hpp. Referenced by CThreadInPool< TRequest >::OnExit(). |
|
|
Standard handling of "exception"-derived exceptions with default error code and given error subcode placed in diagnostics. Default error code is used and error subcode checking for correctness is made in same way as in ERR_POST_X macro.
Definition at line 439 of file ncbiexpt.hpp. |
|
|
Value: catch (NCBI_NS_STD::exception& e) { \ NCBI_CHECK_ERR_SUBCODE_X_NAME(err_name, err_subcode); \ NCBI_NS_NCBI::CNcbiDiag() \ << ErrCode(NCBI_ERRCODE_X_NAME(err_name), err_subcode) \ << NCBI_NS_NCBI::Error \ << "[" << message << "] Exception: " << e.what(); \ }
Definition at line 466 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrint(DIAG_COMPILE_INFO, \ exception_object, #exception_object) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Argument can be a simple string, or an exception object. Example:
Definition at line 202 of file ncbiexpt.hpp. Referenced by CPrintOptions::GetFormatFromName(), and CId1FetchApp::LookUpFlatSeqID(). |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintNP(DIAG_COMPILE_INFO, \ exception_object, #exception_object) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Argument can be any printable object; that is, any object with a defined output operator. Similar to THROW0p_TRACE except that program is not "aborted" when exception is thrown, and argument type can be an aggregate type such as Vector<T> where T is a printable argument. Example:
Definition at line 241 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintP(DIAG_COMPILE_INFO, \ exception_object, #exception_object) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Argument can be any printable object; that is, any object with a defined output operator. Program may abort if so set by SetThrowTraceAbort() or $ABORT_ON_THROW. Example:
Definition at line 221 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrint(DIAG_COMPILE_INFO, \ exception_class(exception_arg), #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with the specified initialization argument. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization argument. Example:
Definition at line 257 of file ncbiexpt.hpp. Referenced by CCgiIbuffer::CCgiIbuffer(), CCgiObuffer::CCgiObuffer(), GetHexChar(), CCgiContext::GetRequestValue(), CCgiResponse::out(), CCgiObuffer::overflow(), ReadBlock(), ReadId(), ReadNumber(), ReadOctetString(), ReadString(), s_GetFormat(), CCgiResponse::SetStatus(), CCgiIbuffer::underflow(), and CPackString::x_RefCounterError(). |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintNP(DIAG_COMPILE_INFO, \ exception_class(exception_arg), #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with a the specified initialization argument. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization argument. Similar to THROW1p_TRACE except that program is not "aborted" when exception is thrown, and argument type can be an aggregate type such as Vector<T> where T is a printable argument. Example:
Definition at line 297 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintP(DIAG_COMPILE_INFO, \ exception_class(exception_arg), #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with a the specified initialization argument. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization argument. Program may abort if so set by SetThrowTraceAbort() or $ABORT_ON_THROW. Example:
Definition at line 277 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrint(DIAG_COMPILE_INFO, \ exception_class exception_args, #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with a the specified initialization arguments. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization arguments. Similar to THROW1_TRACE except that the exception class can have multiple initialization arguments instead of just one. Example:
Definition at line 320 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintNP(DIAG_COMPILE_INFO, \ exception_class exception_args, #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with a the specified initialization argument. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization argument. Argument type can be an aggregate type such as Vector<T> where T is a printable argument. Similar to THROWp_TRACE except that program is not "aborted" when exception is thrown. Example:
Definition at line 365 of file ncbiexpt.hpp. |
|
|
Value: throw NCBI_NS_NCBI::DbgPrintP(DIAG_COMPILE_INFO, \ exception_class exception_args, #exception_class) Combines diagnostic message trace and exception throwing. First the diagnostic message is printed, and then exception is thrown. Arguments can be any exception class with a the specified initialization arguments. The class argument need not be derived from std::exception as a new class object is constructed using the specified class name and initialization arguments. Program may abort if so set by SetThrowTraceAbort() or $ABORT_ON_THROW. Similar to THROW1p_TRACE except that the exception class can have multiple initialization arguments instead of just one. Example:
Definition at line 343 of file ncbiexpt.hpp. |
|
|
Definition at line 74 of file ncbiexpt.hpp. |
|
|
Define THROWS macros for C++ exception specification. Define use of C++ exception specification mechanism: "f(void) throw();" <== "f(void) THROWS_NONE;" "g(void) throw(e1,e2);" <== "f(void) THROWS((e1,e2));" Definition at line 73 of file ncbiexpt.hpp. |
|
|
Define function type for "error code" function.
Definition at line 1091 of file ncbiexpt.hpp. |
|
|
Define function type for "error str" function.
Definition at line 1094 of file ncbiexpt.hpp. |
|
||||||||||||||||
|
Print debug message for "std::string" object.
Definition at line 139 of file ncbiexpt.hpp. References DoDbgPrint(). |
|
||||||||||||||||
|
Print debug message for "char*" object.
Definition at line 130 of file ncbiexpt.hpp. References DoDbgPrint(). |
|
||||||||||||||||
|
Print debug message for "const char*" object.
Definition at line 121 of file ncbiexpt.hpp. References DoDbgPrint(). |
|
||||||||||||||||||||
|
Templated function for printing debug message. Print debug message for the specified exception type. Definition at line 112 of file ncbiexpt.hpp. References DoDbgPrint(). |
|
||||||||||||||||||||
|
Create diagnostic stream for printing specified message. Similar to DbgPrintP except that "abort()" not executed.
Definition at line 167 of file ncbiexpt.hpp. References DoDbgPrint(). |
|
||||||||||||||||||||
|
Create diagnostic stream for printing specified message and "abort()" the program if set by SetThrowTraceAbort() or $ABORT_ON_THROW.
Definition at line 153 of file ncbiexpt.hpp. References DoThrowTraceAbort(), and eDiag_Trace. |
|
||||||||||||||||
|
Print the specified debug messages.
Definition at line 94 of file ncbiexpt.cpp. References DoThrowTraceAbort(), and eDiag_Trace. |
|
||||||||||||
|
Print the specified debug message.
Definition at line 88 of file ncbiexpt.cpp. |
|
||||||||||||
|
Print the specified debug message.
Definition at line 82 of file ncbiexpt.cpp. Referenced by DbgPrint(), and DbgPrintNP(). |
|
|
"abort()" the program if set by SetThrowTraceAbort() or $ABORT_ON_THROW.
Definition at line 69 of file ncbiexpt.cpp. References ABORT_ON_THROW, s_DoThrowTraceAbort, and s_DTTA_Initialized. Referenced by DbgPrintP(), DoDbgPrint(), and CException::x_ReportToDebugger(). |
|
|
Specify whether to call "abort()" inside the DoThrowTraceAbort(). By default, this feature is not activated unless
Definition at line 63 of file ncbiexpt.cpp. References s_DoThrowTraceAbort, and s_DTTA_Initialized. |
|
||||||||||
|
Return valid pointer to uppermost derived class only if "from" is _really_ the object of the desired type. Do not cast to intermediate types (return NULL if such cast is attempted). Definition at line 818 of file ncbiexpt.hpp. |
1.4.6
Modified on Mon Dec 07 16:24:35 2009 by modify_doxy.py rev. 173732