Siegfried Pammer
77d9ee73e9
Fix IDE2000 globally
3 days ago
Siegfried Pammer
3a27cbef06
Fix #3617 : Order of XML comments in types with primary constructors
3 weeks ago
ds5678
a04c0e4cab
Improve decompilation of unmanaged function pointers
...
This improves how function pointers are decompiled.
* ExpressionBuilder::VisitLdFtn now properly constructs the calling conventions.
* FunctionPointerType::FromSignature now checks whether a modopt type affects the calling convention.
1 month ago
Siegfried Pammer
45efc732a7
#3614 : Use correct number of type arguments when adding type annotations to generic types with nested types.
1 month ago
Siegfried Pammer
9c8d1e48d9
Many thanks to @sonyps5201314 for providing the test cases and a suggested fix, which inspired these changes.
...
Various improvements regarding primary constructor decompilation, including:
- introduce `HasPrimaryConstructor` property in the AST, as there is a difference between no primary constructor and a parameterless primary constructor
- improved support for inherited records and forwarded ctor calls
- exclude non-public fields and properties in IsPrintedMember
- introduce an option to always make the decompiler emit primary constructors, when possible
2 months ago
Peter Crabtree
e1e16b64f5
dev: Strip BOM mark from text files
4 months ago
Siegfried Pammer
9157122462
Add ExtensionDeclaration syntax node
5 months ago
Siegfried Pammer
c642678f7f
Remove ToTypeReference: Implement ParseReflectionName with SRM TypeName.
5 months ago
Siegfried Pammer
9dde97414a
Rename ResolvedUsingScope to UsingScope
5 months ago
Siegfried Pammer
ddb7171a2a
Fix #3524 : Property without backing field cannot have an initializer.
5 months ago
Jan Jones
2357d00939
Support `allows ref struct` constraint
5 months ago
Jeremy Pritts
c1ecf1ae9c
Handle explicit optional parameter after default parameter ( #3470 )
...
* Handle explicit optional parameter after default parameter
* Rename and add documentation
* Move extension method
* Add unit test for lamba function
* Apply suggestions from code review
Co-authored-by: Siegfried Pammer <siegfried@pammer.io>
---------
Co-authored-by: Siegfried Pammer <siegfried@pammer.io>
8 months ago
Siegfried Pammer
96caa4ecb7
Fix : #3407 Add "private protected" feature for 7.2 decompiler options
10 months ago
Siegfried Pammer
29861d7903
Fix #1647 : Add a cast to enum constants where the enum type is not known.
10 months ago
Siegfried Pammer
3c70224441
Fix detection and display of explicitly implemented operators.
10 months ago
Siegfried Pammer
6312ab18ae
#2716 : Fix typo
10 months ago
Siegfried Pammer
8b76879493
Fix #2716 : Add an option to allow sorting custom attributes
11 months ago
Daniel Grunwald
8e7e4ba856
Revert "Add support for C# 11 parameter null checks"
...
This reverts commit 9e462b53ad .
1 year ago
Siegfried Pammer
4bf9487ecd
Remove IsRef, IsOut and IsIn flags from IParameter and Replace ParameterModifiers with ReferenceKind.
1 year ago
Siegfried Pammer
591ab6b75d
Implement support for explicit interface implementation of operators and operator uses.
2 years ago
Siegfried Pammer
6172d63ff3
Support virtual modifier on static abstract interface members.
2 years ago
Siegfried Pammer
65b4c928c0
Add support for simple constant patterns.
2 years ago
Siegfried Pammer
f7343c75d0
Add support for simple recursive patterns where the sub pattern is a simple type pattern.
2 years ago
Lucas Trzesniewski
bf69531216
Fix #3025 : Annotate nested types
3 years ago
Daniel Grunwald
32fafeb9a1
Add support for user-defined checked operators.
3 years ago
Daniel Grunwald
8b9ba20847
Builtin unsigned right shift operator.
3 years ago
Daniel Grunwald
3c46271a11
Add support for unsigned right shift.
...
Only for user-defined operators so far; builtin right shifts still cast to the appropriate type.
3 years ago
Daniel Grunwald
3dc2f3d5b6
Rename lifetime annotation to `ScopedRef`
3 years ago
Daniel Grunwald
f568123704
Add support for UTF8 string literals
3 years ago
Daniel Grunwald
9359d47c0b
Add support for ScopedRefAttribute
3 years ago
Daniel Grunwald
475f2b3c28
Fix "ref readonly" fields.
3 years ago
Siegfried Pammer
5c67844500
Fix #2920 : Implement support for DefaultParameterValueAttribute.
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
hexafluoride
fc6ae4c645
Add option to always fully qualify type names with global::
3 years ago
Daniel Grunwald
8b906f5c65
Fix unnecessary dict creation in TSAB constructor.
3 years ago
Siegfried Pammer
583f661153
Work on #1204 : Add optimized implementation of HasAttribute and GetAttribute to IEntity.
3 years ago
Siegfried Pammer
2ed9ad6b51
Add support for C# 11 scoped parameter modifier.
4 years ago
Daniel Grunwald
21c3ec046f
Output attributes on lambda expressions
4 years ago
Siegfried Pammer
5078796b17
Add support for string format alignment.
4 years ago
Siegfried Pammer
d248867302
Add support for C# 10 record structs.
4 years ago
Siegfried Pammer
9e462b53ad
Add support for C# 11 parameter null checks
4 years ago
Siegfried Pammer
2e31427d56
Fix nullability warnings in AstNode and XmlDocumentationElement.
4 years ago
Daniel Grunwald
db7d507138
Fix #2615 : Overflow check did not work reliably due to fp rounding error
4 years ago
Siegfried Pammer
01e5e70bf7
'override' is only valid outside of interfaces.
4 years ago
Siegfried Pammer
15f49c0079
Add basic support for abstract static members in interfaces.
4 years ago
Siegfried Pammer
d8bb40b45b
Generate file-scoped namespace declarations, if possible.
4 years ago
Daniel Grunwald
8c508d9bbb
#2445 : Fix `1f/6f` getting printed as `355f / (678f * (float)Math.PI)`
...
Also fix inconsistent float comparisons due to JIT optimizations.
4 years ago
Siegfried Pammer
73c898664f
Fix #2484 : Private modifier incorrectly applied to interface static constructors
4 years ago
Siegfried Pammer
c641072685
Translate MatchInstruction to BinaryOperatorExpression with BinaryOperatorType.IsPattern.
5 years ago