Sierra Toolkit Version of the Day
stk::diag::Traceback Class Reference

Class Traceback is a stack of char constant pointers to function specifications which have been encounter by Traceback during exception stack unwind. More...

#include <Trace.hpp>

Inheritance diagram for stk::diag::Traceback:
Collaboration diagram for stk::diag::Traceback:

List of all members.

Classes

class  Preserve
 Class Traceback::Preserve serves as a sentry for traceback stack preservation during additional extension and unwinding. More...
struct  PrintCoverage
 Class PrintCoverage is a type holder class for printing the stack. More...

Public Types

enum  TracebackState {
  RUNNING,
  THROWING
}
 Enumeration TracebackState lists the traceback execution states. More...
enum  { STACK_SIZE = 2048 }
typedef const char * Stack [STACK_SIZE]
 Stack type.
typedef const char *const const_stack_iterator
 const iterator thru stack
typedef const char ** stack_iterator
 iterator thru stack
typedef std::map< const char
*, int > 
Coverage
 Typedef Coverage declares the function usage coverage data type.

Public Member Functions

 Traceback (const char *function_spec)
 Creates a new Trace instance, resulting in the printing of the member function name and pushing the depth.
 ~Traceback ()
 Destroys a Traceback instance, resulting in the pushing of the function specification if unwinding the stack.
Writerverbose_print (Writer &dout) const
 Member function verbose_print dumps the function specification stack to the diagnostic writer.

Static Public Member Functions

static TracebackStack snapshot ()
static void enableTracebackDisplay ()
 Member function enableTracebackDisplay enables the display of the traceback.
static void disableTracebackDisplay ()
 Member function disableTracebackDisplay disables the display of the traceback.
static bool displayTraceback ()
 Member function displayEnabled returns true if display of the tracback stack has been enabled.
static void preserveStack ()
 Member function preserveStack increments the traceback stack preservation counter.
static void releaseStack ()
 Member function releaseStack decrements the traceback stack preservation counter.
static void enableCoverage (bool coverage_enabled=true)
 Member function enableCoverage enables the collection of function call coverage data. This is a very expensive operation, but allows function execution coverage data to be collected for testing.
static bool coverageEnabled ()
 Member function coverageEnabled returns true if coverage has been enabled.
static TracebackState getTracebackState ()
 Member function getTracebackState returns the value of the traceback state.
static PrintCoverage printCoverage ()
 Member function printCoverage creates a PrintCoverage type holder class which enables operator<< to put an coverage to an ostream.
static std::ostream & printCoverage (std::ostream &os)
 Member function printCoverage ...
static std::string printTraceback (const TracebackStack &traceback_stack)
 Member function printTraceback writes the traceback stack function specifications to the output stream os.

Detailed Description

Class Traceback is a stack of char constant pointers to function specifications which have been encounter by Traceback during exception stack unwind.

DiagTracingDetail

Definition at line 102 of file stk_util/stk_util/diag/Trace.hpp.


Member Enumeration Documentation

Enumeration TracebackState lists the traceback execution states.

  • RUNNING - No throws are in progress.
  • THROWING - A throw is in progress.

Definition at line 114 of file stk_util/stk_util/diag/Trace.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines