Lumiera  0.pre.03
»edit your freedom«
diagnostic-context.hpp File Reference

Go to the source code of this file.

Description

Facility for collecting diagnostic context information explicitly.

Unlike a trace logging run, this facility is intended to be fed explicitly with diagnostic information describing the currently ongoing operation in a semantic high-level manner. The rationale is to pinpoint those pieces of information, which aren't obvious when just looking at a callstack with the debugger. Instances of the class DiagnosticContext should be placed explicitly as automatic (stack) variable into selected relevant scopes; these "information frames" could be accessed from an enclosed scope as a per-thread stack. DiagnosticContext provides an controlled environment for adding diagnostic code on demand; typically to be configured such as to resolve into an empty class for release builds.

Definition in file diagnostic-context.hpp.

#include "lib/error.hpp"
#include "lib/nocopy.hpp"

Classes

class  DiagnosticContext< VAL >
 Diagnostic data frame to collect specific information concerning a scope. More...
 

Namespaces

 lib
 Implementation namespace for support and library code.