Struct VBStackTraceFrame
One activation of the call stack a run-time error was raised on.
public readonly record struct VBStackTraceFrame : IEquatable<VBStackTraceFrame>
- Implements
- Inherited Members
Constructors
VBStackTraceFrame(string, SourceLocation?, ImmutableArray<SourceLocation>)
One activation of the call stack a run-time error was raised on.
public VBStackTraceFrame(string ProcedureName, SourceLocation? Location, ImmutableArray<SourceLocation> GoSubs = default)
Parameters
ProcedureNamestringThe name of the procedure the activation is of.
LocationSourceLocation?Where in that procedure execution stood, when it is known. Known for the activation the error was raised in — that is the faulting statement — and not for its callers, whose activation records do not carry the location of the call they are suspended at.
GoSubsImmutableArray<SourceLocation>Where the
GoSubstatements the activation had notReturned from were, innermost first: how it got to where it was, within the procedure. It is the activation's GoSub Resumption List (MS-VBAL §5.4.2.14) when the error was raised, and is empty for an activation in noGoSub.
Properties
GoSubs
Where the GoSub statements the activation had not Returned from were, innermost first: how it got to where it was, within the procedure. It is the
activation's GoSub Resumption List (MS-VBAL §5.4.2.14) when the error was raised, and is empty for an activation in no GoSub.
public ImmutableArray<SourceLocation> GoSubs { get; init; }
Property Value
Location
Where in that procedure execution stood, when it is known. Known for the activation the error was raised in — that is the faulting statement — and not for its callers, whose activation records do not carry the location of the call they are suspended at.
public SourceLocation? Location { get; init; }
Property Value
ProcedureName
The name of the procedure the activation is of.
public string ProcedureName { get; init; }
Property Value
Methods
ToString()
The frame as one line: the procedure's name, and the 1-based line and column of the faulting
statement when that is known, then the GoSub statements it came from.
public override string ToString()