File: _generated\115\Microsoft_Diagnostics_DataContractReader_Data.Module.g.cs
Web Access
Project: src\runtime\src\native\managed\cdac\Microsoft.Diagnostics.DataContractReader.Contracts\Microsoft.Diagnostics.DataContractReader.Contracts.csproj (Microsoft.Diagnostics.DataContractReader.Contracts)
// <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>Module</c> type.</summary>
partial class Module
{
    private static readonly string[] _typeNames = new[] { "Module" };

    public TargetPointer Address { get; }

    private readonly Target _target;

    partial void OnInit(Target target, TargetPointer address);

    public Module(Target target, TargetPointer address)
    {
        Address = address;
        _target = target;

        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);

        {
            layouts.Select(address, out var t, out var b, out var n, "Assembly");
            Assembly = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "PEAssembly");
            PEAssembly = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "Flags");
            Flags = target.ReadField<uint>(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "Base");
            Base = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "LoaderAllocator");
            LoaderAllocator = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "DynamicMetadata");
            DynamicMetadata = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "SimpleName");
            SimpleName = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "Path");
            Path = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "FileName");
            FileName = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "ReadyToRunInfo");
            ReadyToRunInfo = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "GrowableSymbolStream");
            GrowableSymbolStream = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "AvailableTypeParams");
            AvailableTypeParams = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "InstMethodHashTable");
            InstMethodHashTable = target.ReadPointerField(b, t, n);
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "FieldDefToDescMap");
            FieldDefToDescMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "ManifestModuleReferencesMap");
            ManifestModuleReferencesMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "MemberRefToDescMap");
            MemberRefToDescMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "MethodDefToDescMap");
            MethodDefToDescMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "TypeDefToMethodTableMap");
            TypeDefToMethodTableMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "TypeRefToMethodTableMap");
            TypeRefToMethodTableMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "MethodDefToILCodeVersioningStateMap");
            MethodDefToILCodeVersioningStateMap = b + (ulong)t.Fields[n].Offset;
        }
        {
            if (layouts.TrySelect(address, out var t, out var b, out var n, "EnCClassList"))
                EnCClassList = b + (ulong)t.Fields[n].Offset;
            else
                EnCClassList = null;
        }
        {
            layouts.Select(address, out var t, out var b, out var n, "DynamicILBlobTable");
            DynamicILBlobTable = target.ReadPointerField(b, t, n);
        }

        OnInit(target, address);
    }

    static Module IData<Module>.Create(Target target, TargetPointer address)
        => new Module(target, address);

    public void WriteFlags(uint value)
    {
        LayoutSet layouts = LayoutSet.Resolve(_target, _typeNames);
        layouts.Select(Address, out var t, out var b, out var n, "Flags");
        _target.WriteField<uint>(b, t, n, value);
        Flags = value;
    }

}