Skip to content

NativeSymbolName

Namespace: Dotsider.Core.Analysis.Disasm

Assembly: Dotsider.Core.dll

Splits a recovered managed name (as joined by the native symbol reader, e.g. System.Text.StringBuilder.Append(char)) into its namespace, declaring type, and member, so the native IL-inspector tree can bucket functions the same namespace → type → method way the managed tree does. The parse is signature-aware (it ignores the parameter list) and handles nested types (+) and generic arity markers.

public readonly record struct NativeSymbolName : IEquatable<NativeSymbolName>

Splits a recovered managed name (as joined by the native symbol reader, e.g. System.Text.StringBuilder.Append(char)) into its namespace, declaring type, and member, so the native IL-inspector tree can bucket functions the same namespace → type → method way the managed tree does. The parse is signature-aware (it ignores the parameter list) and handles nested types (+) and generic arity markers.

Parameters:

  • Namespace (String): The namespace, or empty for the global namespace.
  • TypeName (String): The declaring type (with any nested-type chain), or empty when absent.
  • MemberName (String): The member name with its signature, or the whole name when it has no type qualifier.
public NativeSymbolName(string Namespace, string TypeName, string MemberName)

The member name with its signature, or the whole name when it has no type qualifier.

Returns: String

public string MemberName { get; init; }

The namespace, or empty for the global namespace.

Returns: String

public string Namespace { get; init; }

The declaring type (with any nested-type chain), or empty when absent.

Returns: String

public string TypeName { get; init; }

Parses a managed name into namespace, type, and member.

Parameters:

  • managedName (String): The joined managed name.

Returns: NativeSymbolName

public static NativeSymbolName Parse(string managedName)