View source code
Display the source code in core/runtime.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

core.runtime.Runtime.traceHandler - multiple declarations

Function Runtime.traceHandler

Overrides the default trace mechanism with a user-supplied version. A trace represents the context from which an exception was thrown, and the trace handler will be called when this occurs. The pointer supplied to this routine indicates the base address from which tracing should occur. If the supplied pointer is null then the trace routine should determine an appropriate calling context from which to begin the trace.

static extern(C) void traceHandler (
  object.Throwable.TraceInfo function(void*) h,
  nothrow void function(object.Throwable.TraceInfo) d = null
) @property;

If the deallocator is set, then it is called with the traceinfo when the exception is finalized. The deallocator is only set in the exception if the default handler is used to generate the trace info.

Parameters

NameDescription
h The new trace handler. Set to null to disable exception backtracing.
d The new trace deallocator. If non-null, this will be called on exception destruction with the trace info, only when the trace handler is used to generate TraceInfo.

Function Runtime.traceHandler

Gets the current trace handler.

static extern(C) object.Throwable.TraceInfo traceHandler (
  void
);

Returns

The current trace handler or null if none has been set.

Authors

Sean Kelly

License

Boost License 1.0