#include <Exception.hpp>
Inheritance diagram for corelinux::Exception:
Public Types | |
enum | Severity { CONTINUABLE = 1, THREADFATAL, PROCESSFATAL, THREADTERMINATE, PROCESSTERMINATE } |
Exception Severity States. More... | |
Public Member Functions | |
Exception (CharCptr why, CharCptr file, LineNum line, Severity severity=Exception::CONTINUABLE, bool outOfMemory=false) | |
Default Constructor. | |
Exception (ExceptionCref crOther) | |
Copy constructor. | |
virtual | ~Exception (void) |
Virtual Destructor. | |
ExceptionRef | operator= (ExceptionCref otherRef) |
Assignment operator overload. | |
bool | operator== (ExceptionCref otherRef) |
Comparisson operator overload. | |
const std::string & | getFile (void) const |
Accessor. | |
LineNumCref | getLine (void) const |
Accessor. | |
const std::string & | getWhy (void) const |
Accessor. | |
const Severity & | getSeverity (void) const |
Accessor. | |
const std::string & | getUnwind (void) const |
Accessor. | |
bool | isOutOfMemory (void) const |
Accessor. | |
void | addUnwindInfo (CharCptr unwindInfo) |
Append unwind information to the Exception. | |
void | setThreadFatalSeverity (void) |
Change the severity to Severity::THREADFATAL. | |
void | setProcessFatalSeverity (void) |
Change the severity to Severity::PROCESSFATAL. | |
void | setThreadTerminateSeverity (void) |
Change the severity to Severity::THREADTERMINATE. | |
void | setProcessTerminateSeverity (void) |
Change the severity to Severity::PROCESSTERMINATE. | |
Protected Member Functions | |
Exception (void) | |
Exceptions must have a reason. | |
Exception (CharCptr file, LineNum line, Severity severity=Exception::CONTINUABLE, bool outOfMemory=false) | |
Exception constructor for use by derivations. | |
void | setWhy (const std::string &) |
Changes the exception reason. | |
void | setWhy (CharCptr) |
Changes the exception reason. |
It is provided to support a rich base from which domain Exceptions may derive.
corelinux::Exception::Exception | ( | CharCptr | why, | |
CharCptr | file, | |||
LineNum | line, | |||
Severity | severity = Exception::CONTINUABLE , |
|||
bool | outOfMemory = false | |||
) |
Default Constructor.
why | describes why the exception was thrown | |
file | The source module throwing the exception | |
line | The line of source throwing the exception | |
severity | The Exception::Severity of the Exception | |
outOfMemory | An out of memory indicator |
corelinux::Exception::Exception | ( | ExceptionCref | crOther | ) |
corelinux::Exception::Exception | ( | void | ) | [protected] |
Exceptions must have a reason.
Default constructor is not allowed.
ExceptionRef corelinux::Exception::operator= | ( | ExceptionCref | otherRef | ) |
bool corelinux::Exception::operator== | ( | ExceptionCref | otherRef | ) |
Comparisson operator overload.
Exception | const reference |
const std::string & corelinux::Exception::getFile | ( | void | ) | const |
LineNumCref corelinux::Exception::getLine | ( | void | ) | const |
const std::string & corelinux::Exception::getWhy | ( | void | ) | const |
const Exception::Severity & corelinux::Exception::getSeverity | ( | void | ) | const |
const std::string & corelinux::Exception::getUnwind | ( | void | ) | const |
Accessor.
bool corelinux::Exception::isOutOfMemory | ( | void | ) | const [inline] |
Accessor.
void corelinux::Exception::addUnwindInfo | ( | CharCptr | unwindInfo | ) |
Append unwind information to the Exception.
Clients should use this service to identify themselves and specify any changes to severity.
void corelinux::Exception::setThreadTerminateSeverity | ( | void | ) |
Change the severity to Severity::THREADTERMINATE.
This is useful to the catcher that the thread should be cleaned up.
void corelinux::Exception::setProcessTerminateSeverity | ( | void | ) |
Change the severity to Severity::PROCESSTERMINATE.
This is useful to the catcher that the process should exit