// <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;
}
}