Christoph Wille
facf2f662b
Fix #2933 - look by .Name first, then fall back to ISO
2 years ago
Christoph Wille
2ddab6c54c
Consolidate duplicated code into XmlDocLoader
2 years ago
ElektroKill
feb736a0d5
Fix empty parameter names in delegate declarations ( fixes #2908 )
2 years ago
ElektroKill
628a804864
Add support for record structs in `CSharpAmbience` ( fixes #2910 )
2 years ago
Lucas Trzesniewski
39cb275456
Add semantic highlighting for properties and events
...
Also add a fallback mechanism for colors: if a color definition is empty, another one can be used instead.
2 years ago
Lucas Trzesniewski
403098280a
Use .interfaceimpl type syntax
2 years ago
ElektroKill
3e385bfc0a
Fix `ResXResourceWriter` support for `MemoryStream` resource element
...
In newer runtime versions, MemoryStream is no longer a serializable type like it was in .NET Framework. This means explicit support has to be implemented for it.
2 years ago
Daniel Grunwald
747d4c8178
Improve assertion to apply to the C# type instead of the ILAst type
3 years ago
Siegfried Pammer
7cb8e6534d
Fix #2850 : Make sure that type names longer than 255 characters are handled correctly by WholeProjectDecompiler.GetFileNameForHandle
3 years ago
Siegfried Pammer
cedad6d5e8
#2850 : swap try-catch and using statement so that exception handling shows the file being decompiled causing the IOException.
3 years ago
ElektroKill
25873a68e0
Improve support for post-increment/decrement on pointers
3 years ago
Siegfried Pammer
ff0e929866
- Introduce ProjectItemInfo instead of tuples in WholeProjectDecompiler project item generation.
...
- Set 'LogicalName' attribute for all decompiled resources. This makes it possible to correctly recompile projects with resource names that are not valid filenames.
- Set Generator and SubType properties for XAML files.
3 years ago
Siegfried Pammer
4eea4bf353
Fix #2830 : Can't decompile project with / in resource name on Windows
3 years ago
Siegfried Pammer
619d2af9b2
Add GetNamespaceByFullName and use it to speed up AssignVariableNames.CollectAllLowerCaseTypeNames
3 years ago
Christoph Wille
4951ef0ae7
Next release will be 8.0-preview3
3 years ago
ElektroKill
b193c2a6a2
Add support for rare VB cached delegate construction pattern with return
3 years ago
ElektroKill
ea19843fbd
Fix `CachedDelegateInitializationVBWithClosure` stack slot check
3 years ago
ElektroKill
00e7524780
Fix`CachedDelegatenitializationVB` pattern
3 years ago
ElektroKill
341074aa58
Extend VBPretty Async test code
3 years ago
ElektroKill
5d3f9d3a6f
Add support for Visual Basic async await state machine decompilation
3 years ago
ElektroKill
c8fd044706
Fix `UsingTranform` for inlined `isinst` variation (refs #2199 )
3 years ago
ElektroKill
cdad14b685
Add support for `lock` statements within yield return state machines
3 years ago
tom-englert
3248657d2b
Add filtering/sorting capabilities to ReflectionDisassembler ( #2835 )
...
Co-authored-by: Siegfried Pammer <siegfriedpammer@gmail.com>
3 years ago
ElektroKill
a5febb3e4f
Add support for VB.NET automatic events
3 years ago
ElektroKill
7c73517892
Fix formatting
3 years ago
ElektroKill
a979f0fdfa
Add support for VB.NET cached delegate initialization with closures
3 years ago
ElektroKill
cd3d23e406
Include property and event return types in `RequiredNamespaceCollector`
3 years ago
ElektroKill
0b9d546f46
Fix dynamic type index calculation in `ApplyAttributeTypeVisitor`
3 years ago
Daniel Grunwald
516341a09b
Use "static abstract" instead of "abstract static".
3 years ago
Daniel Grunwald
f3013010cd
Add support for C# 11 required members.
3 years ago
Daniel Grunwald
d3919aa99a
Support native ints in "Combine bit.and into shift" transform
3 years ago
Siegfried Pammer
c3d0e5ecc2
Fix #1784 : Move RemoveEmbeddedAttributes transform to ICSharpCode.Decompiler and do no longer decompile embedded attributes in WholeProjectDecompiler and PortablePdbWriter.
3 years ago
Siegfried Pammer
71e4d51786
Fix #2807 : Detect when a compiler-generated/hidden type needs to be decompiled in WholeProjectDecompiler.
3 years ago
Siegfried Pammer
ae0e83f0c4
Records: Support new EqualityContract pattern.
3 years ago
Daniel Grunwald
696c85992a
Suppress warnings.
3 years ago
Siegfried Pammer
f2da255200
Fix #2825 : Missing whitespace after new()
3 years ago
Siegfried Pammer
51c7c45b14
Fix build.
3 years ago
Siegfried Pammer
6766ad0c59
#2823 : Introduce `IType.GetDefinitionOrUnknown()` to allow better detection of async state-machines involving unknown types.
3 years ago
Siegfried Pammer
3075ec92fe
#2823 : Use row ID instead of token in AsyncDebugInfo blob.
3 years ago
Siegfried Pammer
bde782e4f5
Fix #2806 : Do not use implicitly typed out variables, if argument and parameter types do not match exactly.
3 years ago
Christoph Wille
01b27084e8
Fix package generation - exclude content files, include PackageIcon
3 years ago
Siegfried Pammer
42668e810a
Fix #2808 : Insert cast to object when statically casting from dynamic to a reference type.
3 years ago
Siegfried Pammer
343694c549
Generalize progress reporting for decompilation and PDB generation.
3 years ago
Andrew Crawley (US - DIAGNOSTICS)
a494bfadbe
Add progress reporting to PortablePdbWriter
...
This commit adds a new parameter to PortablePdbWriter.WritePdb that
allows the caller to provide an implementation of IProgress to receive
status updates on the pdb generation process. Currently, the progress
reports include the number of files generated so far and the total
number of files.
3 years ago
Standa Lukeš
93eecf93a5
Add more asserts and ToStrings around the FakeProperty.Setter problem
3 years ago
Standa Lukeš
6153f9cf35
Add test for indexer initializers
3 years ago
Siegfried Pammer
9017592d1d
Fix #2764 : Move constant field initializers regardless of whether the other field initializers can be moved.
3 years ago
Siegfried Pammer
b85d1ba65a
Fix #2771 : Allow MetadataTypeDefinition.DefaultMemberName to return null if DefaultMemberAttribute is not present.
3 years ago
Siegfried Pammer
e8c4f29738
#2797 : Clarify exception message, if type is not found in the module being decompiled.
3 years ago
Standa Lukeš
18481efc44
Fix initialization of FakeProperty with setter
...
Seems like a typo - the setter method was assigned to the Getter property
The test GuessAccessors needed adjustments in the generated code.
ILSpy is more eager to merge property assignments
3 years ago