Files
2026-05-06 09:11:18 +10:00

29 lines
1.2 KiB
C#

namespace BlackbirdInterface
{
public sealed class StackFrameRow
{
public int Index { get; set; }
public string Address { get; set; } = string.Empty;
public string Module { get; set; } = string.Empty;
public string Symbol { get; set; } = string.Empty;
public ulong InstructionPointerRaw { get; set; }
public ulong FramePointerRaw { get; set; }
public long FrameSpanBytes { get; set; }
public bool IsCurrent { get; set; }
public string FramePointer => FramePointerRaw == 0 ? "N/A" : $"0x{FramePointerRaw:X}";
public string FrameSpan => FrameSpanBytes > 0 ? $"0x{FrameSpanBytes:X}" : "N/A";
public StackFrameRow Clone()
{
return new StackFrameRow { Index = Index,
Address = Address,
Module = Module,
Symbol = Symbol,
InstructionPointerRaw = InstructionPointerRaw,
FramePointerRaw = FramePointerRaw,
FrameSpanBytes = FrameSpanBytes,
IsCurrent = IsCurrent };
}
}
}