// <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>ILCodeVersioningState</c> type.</summary>
partial class ILCodeVersioningState : global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData
{
private static readonly string[] _typeNames = new[] { "ILCodeVersioningState" };
[UsesDataDescriptorTypeSize]
public static uint GetSize(Target target)
=> checked((uint)LayoutSet.Resolve(target, _typeNames).InstanceSize);
[DataDescriptorDependency("FirstVersionNode", "pointer")]
public static int GetFirstVersionNodeOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "FirstVersionNode");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("ActiveVersionKind", "uint32")]
public static int GetActiveVersionKindOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "ActiveVersionKind");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("ActiveVersionNode", "pointer")]
public static int GetActiveVersionNodeOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "ActiveVersionNode");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("ActiveVersionModule", "pointer")]
public static int GetActiveVersionModuleOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "ActiveVersionModule");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("ActiveVersionMethodDef", "uint32")]
public static int GetActiveVersionMethodDefOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "ActiveVersionMethodDef");
return type.Fields[name].Offset;
}
public TargetPointer Address { get; }
private readonly Target _target;
private readonly LayoutSet _layouts;
partial void OnInit(Target target, TargetPointer address);
public ILCodeVersioningState(Target target, TargetPointer address)
{
Address = address;
_target = target;
_layouts = LayoutSet.Resolve(target, _typeNames);
OnInit(target, address);
}
static ILCodeVersioningState IData<ILCodeVersioningState>.Create(Target target, TargetPointer address)
=> new ILCodeVersioningState(target, address);
private TargetPointer _FirstVersionNode__value = default!;
private bool _FirstVersionNode__read;
[DataDescriptorDependency("FirstVersionNode", "pointer")]
public partial TargetPointer FirstVersionNode
{
get
{
if (!_FirstVersionNode__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "FirstVersionNode");
_FirstVersionNode__value = _target.ReadPointerField(b, t, n);
_FirstVersionNode__read = true;
}
return _FirstVersionNode__value;
}
}
private uint _ActiveVersionKind__value = default!;
private bool _ActiveVersionKind__read;
[DataDescriptorDependency("ActiveVersionKind", "uint32")]
public partial uint ActiveVersionKind
{
get
{
if (!_ActiveVersionKind__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "ActiveVersionKind");
_ActiveVersionKind__value = _target.ReadField<uint>(b, t, n);
_ActiveVersionKind__read = true;
}
return _ActiveVersionKind__value;
}
}
private TargetPointer _ActiveVersionNode__value = default!;
private bool _ActiveVersionNode__read;
[DataDescriptorDependency("ActiveVersionNode", "pointer")]
public partial TargetPointer ActiveVersionNode
{
get
{
if (!_ActiveVersionNode__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "ActiveVersionNode");
_ActiveVersionNode__value = _target.ReadPointerField(b, t, n);
_ActiveVersionNode__read = true;
}
return _ActiveVersionNode__value;
}
}
private TargetPointer _ActiveVersionModule__value = default!;
private bool _ActiveVersionModule__read;
[DataDescriptorDependency("ActiveVersionModule", "pointer")]
public partial TargetPointer ActiveVersionModule
{
get
{
if (!_ActiveVersionModule__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "ActiveVersionModule");
_ActiveVersionModule__value = _target.ReadPointerField(b, t, n);
_ActiveVersionModule__read = true;
}
return _ActiveVersionModule__value;
}
}
private uint _ActiveVersionMethodDef__value = default!;
private bool _ActiveVersionMethodDef__read;
[DataDescriptorDependency("ActiveVersionMethodDef", "uint32")]
public partial uint ActiveVersionMethodDef
{
get
{
if (!_ActiveVersionMethodDef__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "ActiveVersionMethodDef");
_ActiveVersionMethodDef__value = _target.ReadField<uint>(b, t, n);
_ActiveVersionMethodDef__read = true;
}
return _ActiveVersionMethodDef__value;
}
}
[DataDescriptorDependency("FirstVersionNode", "pointer")]
[DataDescriptorDependency("ActiveVersionKind", "uint32")]
[DataDescriptorDependency("ActiveVersionNode", "pointer")]
[DataDescriptorDependency("ActiveVersionModule", "pointer")]
[DataDescriptorDependency("ActiveVersionMethodDef", "uint32")]
void global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData.EnsureAllFieldsRead()
{
_ = FirstVersionNode;
_ = ActiveVersionKind;
_ = ActiveVersionNode;
_ = ActiveVersionModule;
_ = ActiveVersionMethodDef;
}
}