JustDecompileEngine
JustDecompileEngine copied to clipboard
The decompilation engine of CodemerxDecompile
This case only works for assembly generated by VS2013 and built for Debug.
When there is await in catch or finally clauses, in IL we can see compiler takes await out of catch clause and skips it if we never been in catch....
Compiler generates a different IAsyncStateMachine for `await foreach` to handle iteration on async enumerables. It contains a `MoveNextAsync` method beside `MoveNext`. So we can find this pattern by checking if...
By applying changes on branch `feature/async-upgrades` we will cover new patterns of the `MoveNext` method of `IAsyncStateMachine` which appears in use cases such as: - await in foreach - await...
Number of assemblies copied to References folder is different when running on different platforms. For example in coolstore.ShoppingCart.Net6 test case: Content of `ShoppingCartReferences/` in Windows: `System.Collections.dll System.Linq.dll System.Runtime.dll` Content of...
Decompiling a Program with an async Main method generates an extra method (named `u003cMainu003e` in example below) that calls the other Main. Input `Program.cs`: ``` namespace Sample3 { internal class...
Hi all, Just wanted to let you know that I came through the following exception, at [this location](https://github.com/codemerx/CodemerxDecompile/blob/674c9a6f0a06502b02843d42fef3f2350b37306b/engine/JustDecompiler.Shared/Steps/RebuildLockStatements.cs#L93C1-L94C1): ```// Product version: 0.9.2.0 // Exception in: System.Void AttachEventHandler(System.String,System.Delegate) // // Object...
[Official MSDN Documentation](https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-9#top-level-statements) Currently, we are decompiling such statements.
[Official MSDN Documentation](https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-9#record-types) Currently, we're decompiling such types as classes with many unnecessary members introduced by the compiler.
[Code reference](https://github.com/codemerx/CodemerxDecompile/blob/master/engine/JustDecompiler.Shared/Mono.Cecil.Extensions/MethodReferenceExtentions.cs#L273)