Siegfried Pammer
78dab4f44b
Cleanup
7 years ago
Siegfried Pammer
911fd83c39
Use more appropriate exception types where possible.
7 years ago
Siegfried Pammer
4540b93e19
Use ArgumentOutOfRangeException or BadImageFormatException in switch-default sections.
7 years ago
Siegfried Pammer
bc97127d9d
Reorganize extension methods + remove unused/obsolete.
7 years ago
Siegfried Pammer
0377f406f8
Remove some NotImplementedExceptions/NotSupportedExceptions
7 years ago
Siegfried Pammer
4f1c6e3509
Remove more dead code.
7 years ago
Daniel Grunwald
3be697eadf
Rewrite MinimalCorlib without using the unresolved TS.
7 years ago
Siegfried Pammer
41e43920dc
Fix missing AssemblyResolver in ILSpyWholeProjectDecompiler.
7 years ago
Siegfried Pammer
85c83b8e6f
Fix #1052 : Use IDocumentationProvider in the CSharpDecompiler API
7 years ago
Siegfried Pammer
5b4870e588
Add AlwaysUseBuiltinTypeNames option to TypeSystemAstBuilder
7 years ago
Siegfried Pammer
bcfb3742eb
Clean up PEFile, move Pdb related types to DebugInfo namespace
7 years ago
Daniel Grunwald
4ec0028356
Don't cache attributes in the type system.
7 years ago
Daniel Grunwald
80a4d951a7
Use .resx file extension when saving resources in XML format.
7 years ago
Daniel Grunwald
c17c3c739f
Fix #1192 : Use custom ResourcesFile implementation
...
This avoids deserializing objects embedded in .resources files within the ILSpy process.
7 years ago
Siegfried Pammer
9acc372a68
Use TypeSystem for ILSpy UI:
...
Most important tree nodes and search ported,
Currently only ILLanguage is active
7 years ago
Siegfried Pammer
937e990f31
Fix #1184 : Assertion Failed in InsertMissingTokensDecorator.EndNode
7 years ago
Daniel Grunwald
64547de4a0
foreach loops now use "var" if the element type is a tuple and can be inferred from the collection type.
...
Additionally, the tuple element names inferred from the collection type are now used when translating the foreach body.
7 years ago
Daniel Grunwald
1c0e61a4c3
Fix #1187 : ArgumentException: Illegal characters in path.
7 years ago
Siegfried Pammer
076c0b49e7
RequiredNamespaceCollector: Add support for method signatures.
7 years ago
Siegfried Pammer
e33d1ddce3
Fix #1183 : Assertion Failed in IntroduceUsingDeclarations on Property
7 years ago
Siegfried Pammer
3e1eda980e
Fix exceptions when selecting struct fields in tree view.
7 years ago
Daniel Grunwald
97fc614db5
Remove unimplemented IMember.IsShadowing and IField.IsFixed.
7 years ago
Daniel Grunwald
c85927b579
Add support for IndexerNameAttribute.
7 years ago
Siegfried Pammer
069e4072de
Fix compile errors after merge.
7 years ago
Siegfried Pammer
0c6236ed7e
Collect namespaces of assembly and module attributes
7 years ago
Siegfried Pammer
a1ade47b7f
Fix type mismatch in TypeSystemAstBuilder.ConvertConstantValue
7 years ago
Daniel Grunwald
621d90d006
Use MetadataAssembly (the new TS implementation) in DecompilerTypeSystem.
7 years ago
Daniel Grunwald
db47643a41
Interface implementations in TS
7 years ago
Daniel Grunwald
ee3012281d
Implement MetadataEvent and re-work the representation of attribute arguments.
7 years ago
Siegfried Pammer
10a0c9093c
Do not convert extension method syntax to LINQ, if the null conditional operator is used on the target, as this introduces a syntax error.
7 years ago
Daniel Grunwald
da06a48851
Implement more of the new metadata TS.
7 years ago
Daniel Grunwald
0f8c310de2
Started work on new resolved TS implementation that directly uses SRM.
...
This is a work-in-progress; ILSpy is not functional with this commit.
The old code path still exists but is broken because some classes were modified for the new system.
The new system is still highly incomplete (types only have fields, but no methods).
7 years ago
Daniel Grunwald
0be9e84f1b
Use resolved TS in member filter predicates.
...
This was the last place where the public API of the resolved TS was referencing the unresolved TS.
We could now implement the resolved TS directly using SRM, and remove the whole unresolved TS layer.
7 years ago
Daniel Grunwald
802f6e54fd
Refactor DecompilerTypeSystem.ResolveMethod().
7 years ago
Siegfried Pammer
6ca3863c63
Fix #1135 : Redundant constant "&& true" added to decompiled code.
...
Suppress && / || transformation, if rhs is the identity of the operator.
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
d04155132a
Use overload resolution to add only required casts to collection initializers.
7 years ago
Siegfried Pammer
a823d74004
Use overload resolution to ensure we call the correct indexer + added tests.
7 years ago
Siegfried Pammer
d8e8735ed0
CallBuilder: Extract overload resolution to its own method.
7 years ago
Siegfried Pammer
cf8bee2c01
Fix translation of generic and extension 'Add' methods in collection initializers.
7 years ago
Siegfried Pammer
c7c3801ff1
Add TypeSystemAstBuilder.ConvertAttributeType, which deals with all the special cases when referring to attribute types in attribute context.
7 years ago
Daniel Grunwald
fa2df4df26
Clean up type system interfaces.
7 years ago
Siegfried Pammer
023282a50d
#1180 : Add IsWindowsFormsInitializeComponentMethod and disable some transforms when processing a Windows Forms InitializeComponent method.
7 years ago
Daniel Grunwald
629e586b25
C# 2.0 mode now disables extension methods.
7 years ago
Daniel Grunwald
98d00415d1
Fix tuple types.
7 years ago
Daniel Grunwald
9a74f018b5
Decode metadata signatures directly into IType; without going through ITypeReference.
7 years ago
Siegfried Pammer
5856df001a
Fix #1111 : Only hide "enum value initializers" when all of them can be hidden or only the first needs to be specified.
7 years ago
Chicken-Bones
9937302313
Improve control flow decompilation with some compilers
...
Add a ControlFlowSimplification step after SplitVariables
Enable dead code removal in some unit tests
7 years ago
Siegfried Pammer
eafce7d6cf
Fix documentation comment on DynamicInvocationType.ObjectCreation
7 years ago
Siegfried Pammer
904aa5269e
Fix various bugs in ExpressionBuilder.VisitDynamic* + refactor DynamicInstructions a bit
7 years ago