File: _generated\52\Microsoft_Diagnostics_DataContractReader_Data.Exception.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>Exception</c> / <c>System.Exception</c> type.</summary>
partial class Exception : global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData
{
    private static readonly string[] _typeNames = new[] { "Exception", "System.Exception" };

    [UsesDataDescriptorTypeSize]
    public static uint GetSize(Target target)
        => checked((uint)LayoutSet.Resolve(target, _typeNames).InstanceSize);

    [DataDescriptorDependency("_message", "pointer")]
    public static int GetMessageOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_message", "Message");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_innerException", "pointer")]
    public static int GetInnerExceptionOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_innerException", "InnerException");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_stackTrace", "pointer")]
    public static int GetStackTraceOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_stackTrace", "StackTrace");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_watsonBuckets", "pointer")]
    public static int GetWatsonBucketsOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_watsonBuckets", "WatsonBuckets");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_stackTraceString", "pointer")]
    public static int GetStackTraceStringOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_stackTraceString", "StackTraceString");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_remoteStackTraceString", "pointer")]
    public static int GetRemoteStackTraceStringOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_remoteStackTraceString", "RemoteStackTraceString");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_HResult", "int32")]
    public static int GetHResultOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_HResult", "HResult");
        return type.Fields[name].Offset;
    }

    [DataDescriptorDependency("_xcode", "int32")]
    public static int GetXCodeOffset(Target target)
    {
        LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
        layouts.Select(default, out var type, out _, out var name, "_xcode", "XCode");
        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 Exception(Target target, TargetPointer address)
    {
        Address = address;
        _target = target;
        _layouts = LayoutSet.Resolve(target, _typeNames);

        OnInit(target, address);
    }

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

    private TargetPointer _Message__value = default!;
    private bool _Message__read;
    [DataDescriptorDependency("_message", "pointer")]
    public partial TargetPointer Message
    {
        get
        {
            if (!_Message__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_message", "Message");
                _Message__value = _target.ReadPointerField(b, t, n);
                _Message__read = true;
            }
            return _Message__value;
        }
    }

    private TargetPointer _InnerException__value = default!;
    private bool _InnerException__read;
    [DataDescriptorDependency("_innerException", "pointer")]
    public partial TargetPointer InnerException
    {
        get
        {
            if (!_InnerException__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_innerException", "InnerException");
                _InnerException__value = _target.ReadPointerField(b, t, n);
                _InnerException__read = true;
            }
            return _InnerException__value;
        }
    }

    private TargetPointer _StackTrace__value = default!;
    private bool _StackTrace__read;
    [DataDescriptorDependency("_stackTrace", "pointer")]
    public partial TargetPointer StackTrace
    {
        get
        {
            if (!_StackTrace__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_stackTrace", "StackTrace");
                _StackTrace__value = _target.ReadPointerField(b, t, n);
                _StackTrace__read = true;
            }
            return _StackTrace__value;
        }
    }

    private TargetPointer _WatsonBuckets__value = default!;
    private bool _WatsonBuckets__read;
    [DataDescriptorDependency("_watsonBuckets", "pointer")]
    public partial TargetPointer WatsonBuckets
    {
        get
        {
            if (!_WatsonBuckets__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_watsonBuckets", "WatsonBuckets");
                _WatsonBuckets__value = _target.ReadPointerField(b, t, n);
                _WatsonBuckets__read = true;
            }
            return _WatsonBuckets__value;
        }
    }

    private TargetPointer _StackTraceString__value = default!;
    private bool _StackTraceString__read;
    [DataDescriptorDependency("_stackTraceString", "pointer")]
    public partial TargetPointer StackTraceString
    {
        get
        {
            if (!_StackTraceString__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_stackTraceString", "StackTraceString");
                _StackTraceString__value = _target.ReadPointerField(b, t, n);
                _StackTraceString__read = true;
            }
            return _StackTraceString__value;
        }
    }

    private TargetPointer _RemoteStackTraceString__value = default!;
    private bool _RemoteStackTraceString__read;
    [DataDescriptorDependency("_remoteStackTraceString", "pointer")]
    public partial TargetPointer RemoteStackTraceString
    {
        get
        {
            if (!_RemoteStackTraceString__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_remoteStackTraceString", "RemoteStackTraceString");
                _RemoteStackTraceString__value = _target.ReadPointerField(b, t, n);
                _RemoteStackTraceString__read = true;
            }
            return _RemoteStackTraceString__value;
        }
    }

    private int _HResult__value = default!;
    private bool _HResult__read;
    [DataDescriptorDependency("_HResult", "int32")]
    public partial int HResult
    {
        get
        {
            if (!_HResult__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_HResult", "HResult");
                _HResult__value = _target.ReadField<int>(b, t, n);
                _HResult__read = true;
            }
            return _HResult__value;
        }
    }

    private int _XCode__value = default!;
    private bool _XCode__read;
    [DataDescriptorDependency("_xcode", "int32")]
    public partial int XCode
    {
        get
        {
            if (!_XCode__read)
            {
                _layouts.Select(Address, out var t, out var b, out var n, "_xcode", "XCode");
                _XCode__value = _target.ReadField<int>(b, t, n);
                _XCode__read = true;
            }
            return _XCode__value;
        }
    }

    [DataDescriptorDependency("_message", "pointer")]
    [DataDescriptorDependency("_innerException", "pointer")]
    [DataDescriptorDependency("_stackTrace", "pointer")]
    [DataDescriptorDependency("_watsonBuckets", "pointer")]
    [DataDescriptorDependency("_stackTraceString", "pointer")]
    [DataDescriptorDependency("_remoteStackTraceString", "pointer")]
    [DataDescriptorDependency("_HResult", "int32")]
    [DataDescriptorDependency("_xcode", "int32")]
    void global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData.EnsureAllFieldsRead()
    {
        _ = Message;
        _ = InnerException;
        _ = StackTrace;
        _ = WatsonBuckets;
        _ = StackTraceString;
        _ = RemoteStackTraceString;
        _ = HResult;
        _ = XCode;
    }

}