// <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>EEClass</c> type.</summary>
partial class EEClass : global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData
{
private static readonly string[] _typeNames = new[] { "EEClass" };
[UsesDataDescriptorTypeSize]
public static uint GetSize(Target target)
=> checked((uint)LayoutSet.Resolve(target, _typeNames).InstanceSize);
[DataDescriptorDependency("MethodTable", "pointer")]
public static int GetMethodTableOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "MethodTable");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("MethodDescChunk", "pointer")]
public static int GetMethodDescChunkOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "MethodDescChunk");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("NumMethods", "uint16")]
public static int GetNumMethodsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "NumMethods");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("CorTypeAttr", "uint32")]
public static int GetCorTypeAttrOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "CorTypeAttr");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("InternalCorElementType", "uint8")]
public static int GetInternalCorElementTypeOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "InternalCorElementType");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("NumInstanceFields", "uint16")]
public static int GetNumInstanceFieldsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "NumInstanceFields");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("NumStaticFields", "uint16")]
public static int GetNumStaticFieldsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "NumStaticFields");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("NumThreadStaticFields", "uint16")]
public static int GetNumThreadStaticFieldsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "NumThreadStaticFields");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("FieldDescList", "pointer")]
public static int GetFieldDescListOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "FieldDescList");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("NumNonVirtualSlots", "uint16")]
public static int GetNumNonVirtualSlotsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "NumNonVirtualSlots");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("BaseSizePadding", "uint8")]
public static int GetBaseSizePaddingOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "BaseSizePadding");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("OptionalFields", "pointer")]
public static int GetOptionalFieldsOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "OptionalFields");
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 EEClass(Target target, TargetPointer address)
{
Address = address;
_target = target;
_layouts = LayoutSet.Resolve(target, _typeNames);
OnInit(target, address);
}
static EEClass IData<EEClass>.Create(Target target, TargetPointer address)
=> new EEClass(target, address);
private TargetPointer _MethodTable__value = default!;
private bool _MethodTable__read;
[DataDescriptorDependency("MethodTable", "pointer")]
public partial TargetPointer MethodTable
{
get
{
if (!_MethodTable__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "MethodTable");
_MethodTable__value = _target.ReadPointerField(b, t, n);
_MethodTable__read = true;
}
return _MethodTable__value;
}
}
private TargetPointer _MethodDescChunk__value = default!;
private bool _MethodDescChunk__read;
[DataDescriptorDependency("MethodDescChunk", "pointer")]
public partial TargetPointer MethodDescChunk
{
get
{
if (!_MethodDescChunk__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "MethodDescChunk");
_MethodDescChunk__value = _target.ReadPointerField(b, t, n);
_MethodDescChunk__read = true;
}
return _MethodDescChunk__value;
}
}
private ushort _NumMethods__value = default!;
private bool _NumMethods__read;
[DataDescriptorDependency("NumMethods", "uint16")]
public partial ushort NumMethods
{
get
{
if (!_NumMethods__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "NumMethods");
_NumMethods__value = _target.ReadField<ushort>(b, t, n);
_NumMethods__read = true;
}
return _NumMethods__value;
}
}
private uint _CorTypeAttr__value = default!;
private bool _CorTypeAttr__read;
[DataDescriptorDependency("CorTypeAttr", "uint32")]
public partial uint CorTypeAttr
{
get
{
if (!_CorTypeAttr__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "CorTypeAttr");
_CorTypeAttr__value = _target.ReadField<uint>(b, t, n);
_CorTypeAttr__read = true;
}
return _CorTypeAttr__value;
}
}
private byte _InternalCorElementType__value = default!;
private bool _InternalCorElementType__read;
[DataDescriptorDependency("InternalCorElementType", "uint8")]
public partial byte InternalCorElementType
{
get
{
if (!_InternalCorElementType__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "InternalCorElementType");
_InternalCorElementType__value = _target.ReadField<byte>(b, t, n);
_InternalCorElementType__read = true;
}
return _InternalCorElementType__value;
}
}
private ushort _NumInstanceFields__value = default!;
private bool _NumInstanceFields__read;
[DataDescriptorDependency("NumInstanceFields", "uint16")]
public partial ushort NumInstanceFields
{
get
{
if (!_NumInstanceFields__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "NumInstanceFields");
_NumInstanceFields__value = _target.ReadField<ushort>(b, t, n);
_NumInstanceFields__read = true;
}
return _NumInstanceFields__value;
}
}
private ushort _NumStaticFields__value = default!;
private bool _NumStaticFields__read;
[DataDescriptorDependency("NumStaticFields", "uint16")]
public partial ushort NumStaticFields
{
get
{
if (!_NumStaticFields__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "NumStaticFields");
_NumStaticFields__value = _target.ReadField<ushort>(b, t, n);
_NumStaticFields__read = true;
}
return _NumStaticFields__value;
}
}
private ushort _NumThreadStaticFields__value = default!;
private bool _NumThreadStaticFields__read;
[DataDescriptorDependency("NumThreadStaticFields", "uint16")]
public partial ushort NumThreadStaticFields
{
get
{
if (!_NumThreadStaticFields__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "NumThreadStaticFields");
_NumThreadStaticFields__value = _target.ReadField<ushort>(b, t, n);
_NumThreadStaticFields__read = true;
}
return _NumThreadStaticFields__value;
}
}
private TargetPointer _FieldDescList__value = default!;
private bool _FieldDescList__read;
[DataDescriptorDependency("FieldDescList", "pointer")]
public partial TargetPointer FieldDescList
{
get
{
if (!_FieldDescList__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "FieldDescList");
_FieldDescList__value = _target.ReadPointerField(b, t, n);
_FieldDescList__read = true;
}
return _FieldDescList__value;
}
}
private ushort _NumNonVirtualSlots__value = default!;
private bool _NumNonVirtualSlots__read;
[DataDescriptorDependency("NumNonVirtualSlots", "uint16")]
public partial ushort NumNonVirtualSlots
{
get
{
if (!_NumNonVirtualSlots__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "NumNonVirtualSlots");
_NumNonVirtualSlots__value = _target.ReadField<ushort>(b, t, n);
_NumNonVirtualSlots__read = true;
}
return _NumNonVirtualSlots__value;
}
}
private byte _BaseSizePadding__value = default!;
private bool _BaseSizePadding__read;
[DataDescriptorDependency("BaseSizePadding", "uint8")]
public partial byte BaseSizePadding
{
get
{
if (!_BaseSizePadding__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "BaseSizePadding");
_BaseSizePadding__value = _target.ReadField<byte>(b, t, n);
_BaseSizePadding__read = true;
}
return _BaseSizePadding__value;
}
}
private TargetPointer _OptionalFields__value = default!;
private bool _OptionalFields__read;
[DataDescriptorDependency("OptionalFields", "pointer")]
public partial TargetPointer OptionalFields
{
get
{
if (!_OptionalFields__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "OptionalFields");
_OptionalFields__value = _target.ReadPointerField(b, t, n);
_OptionalFields__read = true;
}
return _OptionalFields__value;
}
}
[DataDescriptorDependency("MethodTable", "pointer")]
[DataDescriptorDependency("MethodDescChunk", "pointer")]
[DataDescriptorDependency("NumMethods", "uint16")]
[DataDescriptorDependency("CorTypeAttr", "uint32")]
[DataDescriptorDependency("InternalCorElementType", "uint8")]
[DataDescriptorDependency("NumInstanceFields", "uint16")]
[DataDescriptorDependency("NumStaticFields", "uint16")]
[DataDescriptorDependency("NumThreadStaticFields", "uint16")]
[DataDescriptorDependency("FieldDescList", "pointer")]
[DataDescriptorDependency("NumNonVirtualSlots", "uint16")]
[DataDescriptorDependency("BaseSizePadding", "uint8")]
[DataDescriptorDependency("OptionalFields", "pointer")]
void global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData.EnsureAllFieldsRead()
{
_ = MethodTable;
_ = MethodDescChunk;
_ = NumMethods;
_ = CorTypeAttr;
_ = InternalCorElementType;
_ = NumInstanceFields;
_ = NumStaticFields;
_ = NumThreadStaticFields;
_ = FieldDescList;
_ = NumNonVirtualSlots;
_ = BaseSizePadding;
_ = OptionalFields;
}
}