core.sys.windows.stacktrace

...

Module Initializers 1

shared static this()

Types 2

aliasRtlCaptureStackBackTraceFunc = USHORT function(ULONG FramesToSkip, ULONG FramesToCapture, PVOID * BackTrace, PULONG BackTraceHash) @nogc
classStackTrace : Throwable.TraceInfo
Fields
ulong[128] tracebuf
ulong[] m_trace
Methods
int opApply( scope int delegate(ref const(char[])) dg ) const
int opApply( scope int delegate(ref size_t, ref const(char[])) dg ) const
string toString() @trusted const
ulong[] trace(size_t skip = 0, CONTEXT * context = null)Receive a stack trace in the form of an address list. One form accepts an allocated buffer, the other form automatically allocates the buffer.
ulong[] trace(ulong[] buffer, size_t skip = 0, CONTEXT * context = null) @nogcditto
char[][] resolve(const(ulong)[] addresses) @trustedResolve a stack trace. Params: addresses = A list of addresses to resolve. Returns: An array of strings with the results.
ulong[] traceNoSync(ulong[] buffer, size_t skip, CONTEXT * context) @nogc
char[][] resolveNoSync(const(ulong)[] addresses)
char[] formatStackFrame(void * pc)
char[] formatStackFrame(void * pc, char * symName)
char[] formatStackFrame(void * pc, char * symName, const scope char * fileName, uint lineNum)
Constructors
this(size_t skip, CONTEXT * context)Constructor Params: skip = The number of stack frames to skip. context = The context to receive the stack trace from. Can be null.

Functions 3

fnvoid RtlCaptureContext(CONTEXT * ContextRecord) @nogc
fnDWORD GetEnvironmentVariableA(LPCSTR lpName, LPSTR pBuffer, DWORD nSize)
private fnstring generateSearchPath()

Variables 3

private varRtlCaptureStackBackTraceFunc RtlCaptureStackBackTrace
private varCRITICAL_SECTION mutex
private varbool initialized