Skip to main content

Module dotnet

Module dotnet 

Source
Expand description

.NET (CoreCLR / Mono) symbol canonicalization.

Canonical form: Namespace.Class.Method with:

  • Parameter lists dropped (CLR metadata tokens disambiguate overloads; cross-session joins don’t need the signature).
  • Nested-class + separators normalized to . (Outer+Inner.MethodOuter.Inner.Method).
  • Module prefix asm!Class.Method stripped when present.
  • Async state machines <Method>d__N.MoveNext unwrapped to Method. The MoveNext entry from a state machine is what samplers see; the user wrote async Method(), so that’s what the agent should see.
  • Generic backtick notation (List1`) preserved — it’s part of the CLR symbol and cross-session stable.
  • Compiler-generated display classes (<>c, <>c__DisplayClass) marked is_synthetic = true.

Structs§

DotnetCanonicalizer