mirror of https://github.com/icsharpcode/ILSpy.git
Branch:
ldmembertoken
christophwille/closedhierarchies
christophwille/membench
compound-assignment-operators
fix/1982-params-attribute-args
fix/2040-invalid-xml-characters
fix/2093-navigateto-reference-assembly
fix/2362-xalz-references
fix/2372-address-taken-by
fix/3282-indexer-optional-arguments
fix/3568-record-member-order
fix/4059-deconstruct-out-slots
fix/lambda-parameter-syntax
fix/scroll-children-on-expand
gh-pages
ldmembertoken
master
natural-type-lambdas-methods
null-coalescing-assignment
release/10.1
release/6.2
release/7.1
release/7.2
release/8.1
substring-optimizations
tests/829-async-method-builder-override
tests/829-collection-expressions
tests/829-compound-assignment-operators
tests/829-coverage-audit
tests/829-expression-tree-named-optional-args
tests/829-expression-variables-in-initializers
tests/829-extended-property-patterns
tests/829-extension-members
tests/829-extension-operators
tests/829-file-local-types
tests/829-improved-definite-assignment
tests/829-improved-overload-candidates
tests/829-inline-arrays
tests/829-interpolated-string-improvements
tests/829-lambda-param-modifiers
tests/829-list-patterns
tests/829-lock-object
tests/829-mixed-deconstruction
tests/829-null-coalescing-assignment
tests/829-null-conditional-assignment
tests/829-object-initializer-indexer
tests/829-overload-resolution-priority
tests/829-params-collections
tests/829-pattern-matching-improvements
tests/829-primary-constructors
tests/829-ref-unsafe-in-iterators-async
tests/829-sealed-record-tostring
tests/829-target-typed-conditional
tests/829-tuple-comparison
win-a11y-textsize
1.0-Beta
1.0-M1
1.0-M2
1.0-M3
1.0.0
2.0.0
2.1
2.2
2.3
2.3.1
3.0-Preview1
3.0-Preview2
3.0.2
v10.0
v10.0-preview1
v10.0-preview2
v10.0-preview3
v10.0.1
v10.1
v10.1.1
v11.0
v11.0-preview1
v11.0-rc
v2.3.2
v2.4
v3.0
v3.0-beta1
v3.0-beta2
v3.0-beta2a
v3.0-beta3
v3.0-beta4
v3.0.1
v3.1-beta1
v3.1-final
v3.1-rc
v3.2-beta
v3.2-rc
v3.2.0
v4.0
v4.0-alpha1
v4.0-beta1
v4.0-beta2
v4.0-beta3
v4.0-rc1
v4.0-rc2
v4.0.1
v5.0
v5.0-preview1
v5.0-preview2
v5.0-preview3
v5.0-preview4
v5.0-rc1
v5.0.1
v5.0.2
v6.0
v6.0-preview1
v6.0-preview2
v6.0-preview3
v6.0-preview4
v6.0-rc1
v6.1
v6.2
v6.2-preview1
v6.2-preview2
v6.2.1
v7.0
v7.0-preview1
v7.0-preview2
v7.0-preview3
v7.0-rc1
v7.0-rc2
v7.1
v7.2
v7.2-preview1
v7.2-preview2
v7.2-preview3
v7.2-preview4
v7.2-rc
v7.2.1
v8.0
v8.0-preview1
v8.0-preview2
v8.0-preview3
v8.0-preview4
v8.0-rc1
v8.1
v8.1.1
v8.2
v9.0
v9.0-preview1
v9.0-preview2
v9.0-preview3
v9.0-rc
v9.1
${ noResults }
1 Commits (ldmembertoken)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
bff069a9e2 |
Put a XAML document where its code-behind is
The project exporter wrote every XAML document to the project root under a fully-qualified name while the code-behind class went into a directory named after its namespace, so the two halves of one partial class ended up in different places. WPF tooling pairs MainWindow.xaml with MainWindow.xaml.cs by name and location; anything else is an unrelated file to it, and --nested-directories made the split wider still by moving only the C# half. Both now go through one function that decides where a type's files live, so the document lands where the type's own C# file would have, and the code-behind is named after the document. The BAML writers of the UI and of the command line had grown their own copies of the naming, which is how they came to disagree with the C# writer in the first place. Assisted-by: Claude:claude-opus-5:Claude Code |
2 weeks ago |
|
|
8c9a104b16 |
Fix #3754: omit async stepping info for runtime-async methods
ILFunction.IsAsync is derived from the method signature, so .NET 11 runtime-async methods (MethodImplAsync bit, no MoveNext state machine) report IsAsync without AsyncAwaitDecompiler ever populating AsyncDebugInfo. Its Awaits then stays an uninitialized ImmutableArray, and PortablePdbWriter threw an NRE building the MethodSteppingInformation blob from that default struct. Runtime-async methods have no yield/resume offsets to record, so guard on Awaits.IsDefault and omit the blob, matching the C# compiler, which emits no stepping information for them either. A genuinely zero-await classic state machine keeps an initialized empty Awaits and is unaffected. Assisted-by: Claude:claude-opus-4-8:Claude Code |
3 months ago |
|
|
3573bddfa7 |
Add license headers to the generator helper files
Assisted-by: Claude:claude-opus-4-8:Claude Code |
3 months ago |
|
|
c174e4d6b1 |
Add the AST source generator for the C# syntax tree
Introduce a Roslyn source generator that emits the visitor boilerplate for the C# AST from [DecompilerAstNode]-tagged node declarations: the IAstVisitor interface, the AcceptVisitor overloads, the pattern-placeholder nodes, and the initial DoMatch support. AccessorKind lets an accessor's keyword be chosen independently of its role, an early step toward shedding the NRefactory role model. |
3 months ago |