Sebastien Lebreton
73c3283efa
Model scoped parameter lifetimes
...
ScopedRefAttribute only records explicit syntax. Effective lifetime also
depends on UnscopedRefAttribute, params collections, out parameters, and
the defining module's RefSafetyRules version. Model those distinctions in
the type system without changing decompiler output.
Assisted-by: Copilot:gpt-5.6-sol:GitHub Copilot CLI
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 86d2918e-5a24-48b4-9a86-41d331ec3720
1 month ago
Siegfried Pammer
77d9ee73e9
Fix IDE2000 globally
9 months ago
Peter Crabtree
e1e16b64f5
dev: Strip BOM mark from text files
1 year ago
Siegfried Pammer
3b0939d99c
Add ExtensionInfo: mapping of extension members to extension implementations and more.
1 year ago
Siegfried Pammer
68ae8ae833
Rename ITypeDefinition.HasExtensionMethods to ITypeDefinition.HasExtensions
1 year ago
Siegfried Pammer
33e497eb80
Refactor ParseReflectionName to return IType instead of ITypeReference
1 year ago
Siegfried Pammer
f673b7caa2
Add support for using different editions of .NET in unit tests
1 year ago
Siegfried Pammer
4bf9487ecd
Remove IsRef, IsOut and IsIn flags from IParameter and Replace ParameterModifiers with ReferenceKind.
2 years ago
Christoph Wille
fba0dbae8d
Migrate to NUnit 4 ( #3132 )
...
* Migrate to NUnit 4 based on https://docs.nunit.org/articles/nunit/release-notes/Nunit4.0-MigrationGuide.html . Needed fix for https://github.com/nunit/nunit/issues/4564
* Test 4.1.0-adev.1 from NUnit MyGet feed (works locally in VS)
* Update to bugfix version adev.2 (works on GH)
* NUnit 4.0.1 final
3 years ago
Siegfried Pammer
8b0c7fbe85
Fix #2921 : struct type definition contains duplicate default constructor.
4 years ago
Siegfried Pammer
00edcad849
Use .NET 4.7.2 assemblies for our type system tests.
5 years ago
Siegfried Pammer
3f721a17c1
Add support for System.Runtime.CompilerServices.SpecialNameAttribute
5 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
6 years ago
Siegfried Pammer
9c1bf7fbdf
Introduce ReferenceKind in IParameter and ByReferenceResolveResult.
7 years ago
Siegfried Pammer
9d19b33ec0
Fix #1394 : Fields marked 'specialname' are excluded from the type system
8 years ago
Siegfried Pammer
36baae8ff6
Fix #1365 : Finalize method missing custom attributes.
8 years ago
Daniel Grunwald
72d755037b
Fix #1283 : handle invalid metadata when decoding constants
8 years ago
Siegfried Pammer
12122841c6
Fix bug in MetadataMethod.GetAttributes and add tests for PreserveSig in DllImportAttribute and PreserveSigAttribute.
8 years ago
Siegfried Pammer
f33f26fddd
Extend TypeSystem/TypeSystemLoaderTests and CSharpAmbienceTests.
8 years ago
Siegfried Pammer
9ed65dc780
Add more tests, fix typo.
8 years ago
Andrey Shchekin
d15fe0f254
Fixed bug with decimal optional parameters not being resolved correctly.
...
Added option to uglify presentation of decimal constants (show `[DecimalConstant(...)]`).
8 years ago
Daniel Grunwald
b396d203bd
Merge IDecompilerTypeSystem with ICompilation.
8 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.
8 years ago
Daniel Grunwald
3be697eadf
Rewrite MinimalCorlib without using the unresolved TS.
8 years ago
Daniel Grunwald
4ec0028356
Don't cache attributes in the type system.
8 years ago
Siegfried Pammer
9d2957372b
Undo reordering of base types
8 years ago
Siegfried Pammer
7d7b7b7d98
Fix order of DirectBaseTypes and typo in SpecializedParameter
8 years ago
Siegfried Pammer
2953c913d3
Fix handling of extension methods
8 years ago
Daniel Grunwald
db47643a41
Interface implementations in TS
8 years ago
Daniel Grunwald
ee3012281d
Implement MetadataEvent and re-work the representation of attribute arguments.
8 years ago
Daniel Grunwald
da06a48851
Implement more of the new metadata TS.
8 years ago
Daniel Grunwald
385433aff4
Add MetadataMethod.
8 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).
8 years ago
Daniel Grunwald
fa2df4df26
Clean up type system interfaces.
8 years ago
Daniel Grunwald
52e33a60c0
Disable tuple tests on SRM branch for now.
8 years ago
Siegfried Pammer
bb67948844
Fix remaining compile errors after merge.
8 years ago
Daniel Grunwald
58dfd70855
Revive NR ConversionTests
8 years ago
Siegfried Pammer
61eead50c7
Fix TypeSystemLoaderTests
9 years ago
Siegfried Pammer
271379ec27
#1088 : Add workaround for exception from Cecil
9 years ago
Siegfried Pammer
4f392538fb
Port test infrastructure
9 years ago
Daniel Grunwald
85c90db202
Add back the NRefactory TypeSystemLoaderTests.
9 years ago