Siegfried Pammer
202c5e22e3
Fix #3383 : more aggressively transform object initializers on structs
6 months ago
Siegfried Pammer
906d248403
Fix #3392 : uses of init-setters must use object-initializer syntax.
6 months ago
Siegfried Pammer
9e168224dd
Fix #3091 : extension methods named "Add" were skipping some checks in AccessPathElement.IsMethodApplicable.
2 years ago
Siegfried Pammer
ac6a2e54ca
Use IsAccessor again.
3 years ago
Siegfried Pammer
927b46b17d
Fix #2787 : Enable NRT in TransformCollectionAndObjectInitializers and fix problems.
3 years ago
Siegfried Pammer
1ac1bd6eab
Remove context field from TransformCollectionAndObjectInitializers, inline DoTransform.
3 years ago
Siegfried Pammer
874ac9ac0b
Fix #2712 : TransformCollectionAndObjectInitializers fails to properly detect set-accessors of FakeProperties.
Bug likely introduced due to an oversight in #2677 .
3 years ago
Siegfried Pammer
d248867302
Add support for C# 10 record structs.
3 years ago
Siegfried Pammer
e726ae28a5
Fix type equality check in TransformCollectionAndObjectInitializers
3 years ago
Siegfried Pammer
d54016ce8f
#2390 : Add support for generic object initializers.
4 years ago
Siegfried Pammer
3df82cf33b
Add support for 'with' expressions
5 years ago
Siegfried Pammer
3a7c69e5b9
Fix #2192 : Add support for VB.NET delegate construction
5 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
5 years ago
Siegfried Pammer
a0d9410f67
Fix build.
5 years ago
Siegfried Pammer
05c988c5df
Revert "#2098: CallBuilder: Fix named argument handling in TI"
This partially reverts commit eea4b7701c
.
5 years ago
Siegfried Pammer
eea4b7701c
#2098 : CallBuilder: Fix named argument handling in TI
5 years ago
Siegfried Pammer
1c7d9705da
Add Validation of delegate target instructions.
5 years ago
Siegfried Pammer
6042819117
Implement Block.CheckInvariant for BlockKind.ArrayInitializer, BlockKind.CollectionInitializer and BlockKind.ObjectInitializer
5 years ago
Siegfried Pammer
53c593af0b
Fixed all TDCU related tests.
5 years ago
Siegfried Pammer
61231b7725
Fix #1593 : TransformCollectionAndObjectInitializers uses nested indexer call as target of object initializer.
6 years ago
Siegfried Pammer
5a2302089b
Refactor TransformDisplayClassUsage into separate transform.
Make display class detection pattern-based instead of name-based. Fixes #1554
6 years ago
Siegfried Pammer
7a976f197f
Fix #1500 : anonymous type creation expression cannot have an object initializer.
6 years ago
Siegfried Pammer
590558883e
Fix small regression in initializer tests.
7 years ago
Siegfried Pammer
77c1dbab8a
Fix #1345 : Do not construct object initializer, if property or field in access path is not writable.
7 years ago
Siegfried Pammer
6719dacabd
Fix #1279 : Event fields in object initializers
7 years ago
Daniel Grunwald
b396d203bd
Merge IDecompilerTypeSystem with ICompilation.
7 years ago
Daniel Grunwald
3b46776c5e
Rename IAssembly -> IModule.
While support for multi-module assemblies isn't fully working yet; it is clear at this point that we want
to treat each module in a multi-module assembly separately for the purposes of the type system.
7 years ago
Siegfried Pammer
069e4072de
Fix compile errors after merge.
7 years ago
Siegfried Pammer
6096b7df29
#907 : CallBuilder: If type arguments cannot be inferred from the parameter list, add them before asking overload resolution, but remove them again, if it does not reduce the number of casts.
7 years ago
Siegfried Pammer
cf8bee2c01
Fix translation of generic and extension 'Add' methods in collection initializers.
7 years ago
Siegfried Pammer
b9f14905b2
Fix #1155 : DictionaryInitializers setting not working
7 years ago
Siegfried Pammer
2d427cf534
Relax rules for object and collection initializer detection to properly decompile query expressions.
7 years ago
Daniel Grunwald
8a589b2fd2
Add DecompilerSettings constructor that takes a language version.
8 years ago
Siegfried Pammer
7cbcdd9f0e
#1049 : add back some decompiler settings
8 years ago
Siegfried Pammer
9689667515
Fix #1042 : Wrong decompile result for collection initializers
8 years ago
Siegfried Pammer
349183544a
Rename BlockType to BlockKind
8 years ago
Siegfried Pammer
461e59bd3f
Clean up and documentation
8 years ago
Siegfried Pammer
08dcead162
Fix false positive in struct initializers with default.value init
8 years ago
Siegfried Pammer
0b6987f195
Fix pretty unit tests.
8 years ago
Siegfried Pammer
381bd42599
Fix bug mentioned in #909
8 years ago
Siegfried Pammer
14b6c599c1
Fix object initializers directly accessing struct members + add initializer pretty tests.
8 years ago
LordJZ
db7ac3584e
Fix crash when decompiling event add call in collection initializer
8 years ago
Daniel Grunwald
7017c6f6e6
Replace LoopingBlockTransform with StatementTransform.
This transform interleaves statement-combining transforms so that nested structures can be detected better.
8 years ago
Siegfried Pammer
f267a7875e
Fix #855 - ArgumentOutOfRangeException in TransformCollectionAndObjectInitializers.DoTransform
8 years ago
Siegfried Pammer
000f94caad
TransformCollectionAndObjectInitializers: only add step right before transforming.
8 years ago
Siegfried Pammer
ed6a2db37c
Add VariableKind.InitializerTarget to separate stack slots should be renamed from purely generated helper variables in initializer blocks.
8 years ago
Siegfried Pammer
7ea511ef32
Add support for C# 6 dictionary initializer.
8 years ago
Daniel Grunwald
a8adc83de4
Decompile object initializers more aggressively when the initialized object is stored in a stack slot.
8 years ago
Siegfried Pammer
934edb6e79
TransformCollectionAndObjectInitializers: Fix problems with unknown types.
8 years ago
Siegfried Pammer
c5d3218834
TransformCollectionAndObjectInitializers: Do not transform display class usages
8 years ago