Poco

class Bugcheck

Library: Foundation
Package: Core
Header: Poco/Bugcheck.h

Description

This class provides some static methods that are used by the poco_assert_dbg(), poco_assert(), poco_check_ptr(), poco_bugcheck() and poco_unexpected() macros. You should not invoke these methods directly. Use the macros instead, as they automatically provide useful context information.

Member Summary

Member Functions: assertion, bugcheck, debugger, nullPointer, unexpected, what

Member Functions

assertion static

static void assertion(
    const char * cond,
    const char * file,
    int line,
    const char * text = 0
);

An assertion failed. Break into the debugger, if possible, then throw an AssertionViolationException.

bugcheck static

static void bugcheck(
    const char * file,
    int line
);

An internal error was encountered. Break into the debugger, if possible, then throw an BugcheckException.

bugcheck static

static void bugcheck(
    const char * msg,
    const char * file,
    int line
);

An internal error was encountered. Break into the debugger, if possible, then throw an BugcheckException.

debugger static

static void debugger(
    const char * file,
    int line
);

An internal error was encountered. Break into the debugger, if possible.

debugger static

static void debugger(
    const char * msg,
    const char * file,
    int line
);

An internal error was encountered. Break into the debugger, if possible.

nullPointer static

static void nullPointer(
    const char * ptr,
    const char * file,
    int line
);

An null pointer was encountered. Break into the debugger, if possible, then throw an NullPointerException.

unexpected static

static void unexpected(
    const char * file,
    int line
);

An exception was caught in a destructor. Break into debugger, if possible and report exception. Must only be called from within a catch () block as it rethrows the exception to determine its class.

what protected static

static std::string what(
    const char * msg,
    const char * file,
    int line,
    const char * text = 0
);