RecoveredType
Namespace: Dotsider.Core.Analysis.Models
Assembly: Dotsider.Core.dll
A type recovered from a Native AOT binary’s embedded NativeFormat metadata. ILC strips ECMA-335 metadata, but the reflection and stack-trace metadata it keeps still names the binary’s own types and methods, so a stripped binary can describe itself.
public sealed record RecoveredType : IEquatable<RecoveredType>Inheritance
Section titled “Inheritance”Object → RecoveredType
Implements
Section titled “Implements”Constructors
Section titled “Constructors”RecoveredType(string, IReadOnlyList<string>, string?)
Section titled “RecoveredType(string, IReadOnlyList<string>, string?)”A type recovered from a Native AOT binary’s embedded NativeFormat metadata. ILC strips ECMA-335 metadata, but the reflection and stack-trace metadata it keeps still names the binary’s own types and methods, so a stripped binary can describe itself.
Parameters:
FullName(String): The namespace-qualified type name (nested types use+).MethodNames(IReadOnlyList<String>): The names of the type’s methods, in metadata order.AssemblyName(String): The simple name of the assembly scope that defined the type, or null when the metadata does not record one. Native symbol demangling joins mangled names against this scope.
public RecoveredType(string FullName, IReadOnlyList<string> MethodNames, string? AssemblyName = null)Properties
Section titled “Properties”AssemblyName
Section titled “AssemblyName”The simple name of the assembly scope that defined the type, or null when the metadata does not record one. Native symbol demangling joins mangled names against this scope.
Returns: String
public string? AssemblyName { get; init; }FullName
Section titled “FullName”The namespace-qualified type name (nested types use +).
Returns: String
public string FullName { get; init; }MethodNames
Section titled “MethodNames”The names of the type’s methods, in metadata order.
Returns: IReadOnlyList<String>
public IReadOnlyList<string> MethodNames { get; init; }Methods
Section titled “Methods”Deconstruct(out string, out IReadOnlyList<string>)
Section titled “Deconstruct(out string, out IReadOnlyList<string>)”Deconstructs into the original two components, preserving call sites written before AssemblyName existed — a record’s generated Deconstruct grows with its positional parameters, so the two-value form is kept explicitly.
Parameters:
fullName(String): The namespace-qualified type name.methodNames(IReadOnlyList<String>): The names of the type’s methods, in metadata order.
public void Deconstruct(out string fullName, out IReadOnlyList<string> methodNames)