Decompiling static abstract interface members: how generic math compiles
Zero Heartbeat
Decompiling ref fields and scoped: how C# 11 ref structs look in IL
Zero Heartbeat
Decompiling C# pattern matching and switch expressions
Zero Heartbeat
Decompiling params collections: where did my array go?
Zero Heartbeat
Decompiling optional and named arguments: default values in the Constant table and the temporaries the compiler emits for reordering
Zero Heartbeat
Decompiling operator overloads: op_ names, checked operators, and the conversions that only compile as operators
Zero Heartbeat
Decompiling nullable value types: int? is a struct, a lifted operator is a HasValue check, and the box that erases Nullable<T>
Zero Heartbeat
Decompiling nullable reference types: where string? actually lives in the metadata
Zero Heartbeat
Decompiling a?.b?.c: how the null-conditional operator becomes branches and one shared skip label
Zero Heartbeat
Decompiling local functions in Glass.NET: name mangling and ref-struct closures
Zero Heartbeat
What Lambdas and Closures Decompile To: Display Classes and Captured Variables
Zero Heartbeat
Decompiling C# 12 inline arrays and stackalloc: fixed buffers without the unsafe
Zero Heartbeat
Decompiling init-only setters and required members: the modreq and attributes that make them
Zero Heartbeat
Decompiling function pointers: calli, delegate*, and where the calling convention hides
Zero Heartbeat
Decompiling foreach: the enumerator, the hidden try/finally, and when it is really a for loop
Zero Heartbeat
Decompiling fixed: pinned locals, the null-or-empty array guard, and GetPinnableReference
Zero Heartbeat
Decompiling C# expression trees: the lambda that became a tree of factory calls
Zero Heartbeat
Decompiling exception filters: the catch (e) when (...) that becomes a filter region and the endfilter that runs it
Zero Heartbeat
Decompiling the dynamic keyword: reading call-site IL in Glass.NET
Zero Heartbeat
Decompiling default interface methods: a method body inside an interface, the class that never overrode it, and the cast you cannot drop
Zero Heartbeat
Decompiling a decimal constant: why 3.14m is not an IL constant, and the [DecimalConstant] attribute that rebuilds it
Zero Heartbeat
Decompiling C# records: the generated members that give them away
Zero Heartbeat
Decompiling C# events: the CompareExchange loop behind += and -=
Zero Heartbeat
Decompiling control flow: how Glass.NET rebuilds loops and if/else from a pile of branches
Zero Heartbeat
Decompiling C# 12: collection expressions and primary constructors
Zero Heartbeat