NCBI C++ ToolKit
Public Types | Public Member Functions | Protected Member Functions | Static Private Member Functions | List of all members
CCoreException Class Reference

Search Toolkit Book for CCoreException

CCoreException –. More...

#include <corelib/ncbiexpt.hpp>

+ Inheritance diagram for CCoreException:
+ Collaboration diagram for CCoreException:

Public Types

enum  EErrCode {
  eCore , eNullPtr , eDll , eDiagFilter ,
  eInvalidArg
}
 Error types that corelib can generate. More...
 
typedef int TErrCode
 
- Public Types inherited from CException
enum  EErrCode { eInvalid = -1 , eUnknown = 0 }
 Error types that an application can generate. More...
 
enum  EFlags { fConsole = (1 << 0) }
 Miscellaneous generic hints, flags and attributes. More...
 
typedef int TErrCode
 
typedef int TFlags
 

Public Member Functions

virtual const char * GetErrCodeString (void) const override
 Translate from the error code value to its string representation. More...
 
 CCoreException (const CDiagCompileInfo &info, const CException *prev_exception, EErrCode err_code, const string &message, EDiagSev severity=eDiag_Error)
 
 CCoreException (const CDiagCompileInfo &info, const CException *prev_exception, const CExceptionArgs< EErrCode > &args, const string &message)
 
 CCoreException (const CCoreException &other)
 
virtual ~ CCoreException (void) noexcept
 
virtual const char * GetType (void) const override
 Get class name as a string. More...
 
TErrCode GetErrCode (void) const
 
virtual void Throw (void) const override
 Polymorphically (re)throw an exception whose exact type is uncertain. More...
 
- Public Member Functions inherited from CException
 CException (const CDiagCompileInfo &info, const CException *prev_exception, EErrCode err_code, const string &message, EDiagSev severity=eDiag_Error, TFlags flags=0)
 Constructor. More...
 
 CException (const CDiagCompileInfo &info, const CException *prev_exception, const CExceptionArgs< EErrCode > &args, const string &message)
 
 CException (const CException &other)
 Copy constructor. More...
 
void AddBacklog (const CDiagCompileInfo &info, const string &message, EDiagSev severity=eDiag_Error)
 Add a message to backlog (to re-throw the same exception then). More...
 
void AddPrevious (const CException *prev_exception)
 
void AddToMessage (const string &add_msg)
 
virtual const char * what (void) const noexcept
 Standard report (includes full backlog). More...
 
void Report (const CDiagCompileInfo &info, const string &title, CExceptionReporter *reporter=0, TDiagPostFlags flags=eDPF_Exception) const
 Report the exception. More...
 
string ReportThis (TDiagPostFlags flags=eDPF_Exception) const
 Report this exception only. More...
 
string ReportAll (TDiagPostFlags flags=eDPF_Exception) const
 Report all exceptions. More...
 
void ReportStd (ostream &out, TDiagPostFlags flags=eDPF_Exception) const
 Report "standard" attributes. More...
 
virtual void ReportExtra (ostream &out) const
 Report "non-standard" attributes. More...
 
const CStackTraceGetStackTrace (void) const
 Get the saved stack trace if available or NULL. More...
 
EDiagSev GetSeverity (void) const
 Get exception severity. More...
 
CExceptionSetSeverity (EDiagSev severity)
 Set exception severity. More...
 
const stringGetFile (void) const
 Get file name used for reporting. More...
 
void SetModule (const string &module)
 Set module name used for reporting. More...
 
const stringGetModule (void) const
 Get module name used for reporting. More...
 
void SetClass (const string &nclass)
 Set class name used for reporting. More...
 
const stringGetClass (void) const
 Get class name used for reporting. More...
 
void SetFunction (const string &function)
 Set function name used for reporting. More...
 
const stringGetFunction (void) const
 Get function name used for reporting. More...
 
int GetLine (void) const
 Get line number where error occurred. More...
 
TErrCode GetErrCode (void) const
 Get error code. More...
 
const stringGetMsg (void) const
 Get message string. More...
 
const CExceptionGetPredecessor (void) const
 Get "previous" exception from the backlog. More...
 
bool HasMainText (void) const
 Check if exception has main text in the chain. More...
 
virtual ~CException (void) noexcept
 Destructor. More...
 
bool IsSetFlag (EFlags flag) const
 Check if the flag is set. More...
 
CExceptionSetFlag (EFlags flag)
 Set flag (add to other flags) More...
 
CExceptionUnsetFlag (EFlags flag)
 Unset flag (other flags are left as is) More...
 
CRequestContextGetRequestContext (void) const
 Get the request context in which the exception was thrown. More...
 
void SetRetriable (ERetriable retriable)
 Set the info about ability to retry an action caused the exception. More...
 
virtual ERetriable GetRetriable (void) const
 Retrieve info about ability to retry an action caused the exception. More...
 

Protected Member Functions

 CCoreException (const CDiagCompileInfo &info, const CException *prev_exception, const string &message, EDiagSev severity, CException::TFlags flags)
 
 CCoreException (void)
 
virtual const CExceptionx_Clone (void) const override
 Helper method for cloning the exception. More...
 
- Protected Member Functions inherited from CException
 CException (const CDiagCompileInfo &info, const CException *prev_exception, const string &message, EDiagSev severity=eDiag_Error, TFlags flags=0)
 Constructor for derived classes. More...
 
 CException (void)
 Constructor with no arguments. More...
 
virtual void x_ReportToDebugger (void) const
 Helper method for reporting to the system debugger. More...
 
virtual void x_Init (const CDiagCompileInfo &info, const string &message, const CException *prev_exception, EDiagSev severity)
 Helper method for initializing exception data. More...
 
virtual void x_InitArgs (const CExceptionArgs_Base &args)
 Process additional arguments. More...
 
virtual void x_Assign (const CException &src)
 Helper method for copying exception data. More...
 
virtual void x_AssignErrCode (const CException &src)
 Helper method for assigning error code. More...
 
virtual void x_InitErrCode (CException::EErrCode err_code)
 Helper method for initializing error code. More...
 
virtual int x_GetErrCode (void) const
 Helper method for getting error code. More...
 
void x_GetStackTrace (void)
 Get and store current stack trace. More...
 
void x_ThrowSanityCheck (const type_info &expected_type, const char *human_name) const
 Warn if Throw() will end up slicing its invocant. More...
 

Static Private Member Functions

static void xx_unused_CCoreException (void)
 

Additional Inherited Members

- Static Public Member Functions inherited from CException
static bool EnableBackgroundReporting (bool enable)
 Enable background reporting. More...
 
static void SetStackTraceLevel (EDiagSev level)
 Set severity level for saving and printing stack trace. More...
 
static EDiagSev GetStackTraceLevel (void)
 Get current severity level for saving and printing stack trace. More...
 

Detailed Description

CCoreException –.

Define corelib exception. CCoreException inherits its basic functionality from CException and defines additional error codes for applications.

Examples
/home/coremake/doxygen/cxx/include/corelib/interprocess_lock.hpp, and /home/coremake/doxygen/cxx/include/util/data_histogram.hpp.

Definition at line 1475 of file ncbiexpt.hpp.


The documentation for this class was generated from the following files:
Modified on Wed Apr 17 13:09:12 2024 by modify_doxy.py rev. 669887