|
// <auto-generated/>
#nullable enable
using Microsoft.Diagnostics.DataContractReader;
using Microsoft.Diagnostics.DataContractReader.Contracts;
using Microsoft.Diagnostics.DataContractReader.Generated;
namespace Microsoft.Diagnostics.DataContractReader.Data;
/// <summary>Wraps the <c>TransitionBlock</c> type.</summary>
partial class TransitionBlock
{
private static readonly string[] _typeNames = new[] { "TransitionBlock" };
public TargetPointer Address { get; }
partial void OnInit(Target target, TargetPointer address);
public TransitionBlock(Target target, TargetPointer address)
{
Address = address;
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
{
layouts.Select(address, out var t, out var b, out var n, "ReturnAddress");
ReturnAddress = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "CalleeSavedRegisters");
CalleeSavedRegisters = b + (ulong)t.Fields[n].Offset;
}
{
layouts.Select(address, out var t, out var b, out var n, "ArgumentRegisters");
ArgumentRegisters = b + (ulong)t.Fields[n].Offset;
}
{
layouts.Select(address, out var t, out var b, out var n, "FirstGCRefMapSlot");
FirstGCRefMapSlot = b + (ulong)t.Fields[n].Offset;
}
OnInit(target, address);
}
static TransitionBlock IData<TransitionBlock>.Create(Target target, TargetPointer address)
=> new TransitionBlock(target, address);
}
|