MethodCorrelation
Namespace: Dotsider.Core.Analysis.Models
Assembly: Dotsider.Core.dll
One pre-ILC managed method joined to its native evidence: the symbols that carry its compiled code and the mstat rows that carry its sizes.
public sealed record MethodCorrelation : IEquatable<MethodCorrelation>Inheritance
Section titled “Inheritance”Object → MethodCorrelation
Implements
Section titled “Implements”Constructors
Section titled “Constructors”MethodCorrelation(string, MethodDefInfo, MethodCorrelationStatus, IReadOnlyList<NativeSymbol>, IReadOnlyList<MstatMethod>)
Section titled “MethodCorrelation(string, MethodDefInfo, MethodCorrelationStatus, IReadOnlyList<NativeSymbol>, IReadOnlyList<MstatMethod>)”One pre-ILC managed method joined to its native evidence: the symbols that carry its compiled code and the mstat rows that carry its sizes.
Parameters:
AssemblyName(String): The simple name of the assembly the method is defined in.Method(MethodDefInfo): The managed method definition.Status(MethodCorrelationStatus): How the method relates to the native image.NativeSymbols(IReadOnlyList<NativeSymbol>): The joined native symbols — owned when exact (several mean generic instantiations), the shared candidate pool when ambiguous.MstatMethods(IReadOnlyList<MstatMethod>): The joined mstat rows, empty when no mstat sidecar was available.
public MethodCorrelation(string AssemblyName, MethodDefInfo Method, MethodCorrelationStatus Status, IReadOnlyList<NativeSymbol> NativeSymbols, IReadOnlyList<MstatMethod> MstatMethods)Properties
Section titled “Properties”AssemblyName
Section titled “AssemblyName”The simple name of the assembly the method is defined in.
Returns: String
public string AssemblyName { get; init; }Method
Section titled “Method”The managed method definition.
Returns: MethodDefInfo
public MethodDefInfo Method { get; init; }MstatMethods
Section titled “MstatMethods”The joined mstat rows, empty when no mstat sidecar was available.
Returns: IReadOnlyList<MstatMethod>
public IReadOnlyList<MstatMethod> MstatMethods { get; init; }NativeSize
Section titled “NativeSize”The native size in bytes this method owns outright — mstat sizes preferred, symbol sizes otherwise. Zero when the evidence is shared with overloads: shared bytes are never attributed to any single candidate.
Returns: Int64
public long NativeSize { get; init; }NativeSymbols
Section titled “NativeSymbols”The joined native symbols — owned when exact (several mean generic instantiations), the shared candidate pool when ambiguous.
Returns: IReadOnlyList<NativeSymbol>
public IReadOnlyList<NativeSymbol> NativeSymbols { get; init; }SharedCandidateSize
Section titled “SharedCandidateSize”The size of the shared evidence pool this method is a candidate for, when Status reflects shared evidence. The same pool is reported on every sibling candidate; aggregate accounting counts it once.
Returns: Int64
public long SharedCandidateSize { get; init; }Status
Section titled “Status”How the method relates to the native image.
Returns: MethodCorrelationStatus
public MethodCorrelationStatus Status { get; init; }Methods
Section titled “Methods”Deconstruct(out string, out MethodDefInfo, out MethodCorrelationStatus, out IReadOnlyList<NativeSymbol>, out IReadOnlyList<MstatMethod>)
Section titled “Deconstruct(out string, out MethodDefInfo, out MethodCorrelationStatus, out IReadOnlyList<NativeSymbol>, out IReadOnlyList<MstatMethod>)”Parameters:
AssemblyName(String)Method(MethodDefInfo)Status(MethodCorrelationStatus)NativeSymbols(IReadOnlyList<NativeSymbol>)MstatMethods(IReadOnlyList<MstatMethod>)
public void Deconstruct(out string AssemblyName, out MethodDefInfo Method, out MethodCorrelationStatus Status, out IReadOnlyList<NativeSymbol> NativeSymbols, out IReadOnlyList<MstatMethod> MstatMethods)Equals(MethodCorrelation?)
Section titled “Equals(MethodCorrelation?)”Parameters:
other(MethodCorrelation)
Returns: Boolean
public bool Equals(MethodCorrelation? other)Equals(object?)
Section titled “Equals(object?)”Parameters:
obj(Object)
Returns: Boolean
public override bool Equals(object? obj)GetHashCode()
Section titled “GetHashCode()”Returns: Int32
public override int GetHashCode()ToString()
Section titled “ToString()”Returns: String
public override string ToString()Members
Section titled “Members”operator !=(MethodCorrelation?, MethodCorrelation?)
Section titled “operator !=(MethodCorrelation?, MethodCorrelation?)”Parameters:
left(MethodCorrelation)right(MethodCorrelation)
Returns: Boolean
public static bool operator !=(MethodCorrelation? left, MethodCorrelation? right)operator ==(MethodCorrelation?, MethodCorrelation?)
Section titled “operator ==(MethodCorrelation?, MethodCorrelation?)”Parameters:
left(MethodCorrelation)right(MethodCorrelation)
Returns: Boolean
public static bool operator ==(MethodCorrelation? left, MethodCorrelation? right)