From 2c506662ca72e2a718108dbe89ca94ea0947efa4 Mon Sep 17 00:00:00 2001 From: Youssef1313 Date: Mon, 4 Apr 2022 17:50:50 +0200 Subject: [PATCH 1/5] Remove some 'MyCodeAction's --- .../AddBraces/CSharpAddBracesCodeFixProvider.cs | 13 ++++--------- .../ConvertNamespaceCodeFixProvider.cs | 10 +--------- ...rpMakeStructFieldsWritableCodeFixProvider.cs | 14 ++++---------- ...nnecessaryLambdaExpressionCodeFixProvider.cs | 13 ++++--------- ...pUseImplicitObjectCreationCodeFixProvider.cs | 13 ++++--------- .../UseImplicitTypeCodeFixProvider.cs | 15 ++++----------- .../CSharpUseIndexOperatorCodeFixProvider.cs | 14 ++++---------- ...pUseNullCheckOverTypeCheckCodeFixProvider.cs | 13 ++++--------- .../CSharpUseNotPatternCodeFixProvider.cs | 14 ++++---------- .../CSharpUseTupleSwapCodeFixProvider.cs | 14 ++++---------- .../AddRequiredParenthesesCodeFixProvider.cs | 11 ++--------- ...tractConvertTypeOfToNameOfCodeFixProvider.cs | 17 ++++++----------- ...angeNamespaceToMatchFolderCodeFixProvider.cs | 13 ++++--------- ...bstractQualifyMemberAccessCodeFixProvider.cs | 16 +++++----------- .../RemoveRedundantEqualityCodeFixProvider.cs | 13 +++---------- ...ctRemoveUnnecessaryImportsCodeFixProvider.cs | 16 +++++----------- ...moveUnnecessaryParenthesesCodeFixProvider.cs | 14 ++++---------- ...ssaryAttributeSuppressionsCodeFixProvider.cs | 13 ++++--------- .../SimplifyConditionalCodeFixProvider.cs | 14 ++++---------- .../UpdateLegacySuppressionsCodeFixProvider.cs | 13 ++++--------- .../UseExplicitTupleNameCodeFixProvider.cs | 16 ++++------------ ...tractUseInferredMemberNameCodeFixProvider.cs | 14 ++++---------- ...seIsNullForReferenceEqualsCodeFixProvider.cs | 10 +--------- .../UseThrowExpressionCodeFixProvider.cs | 14 ++++---------- 24 files changed, 91 insertions(+), 236 deletions(-) diff --git a/src/Analyzers/CSharp/CodeFixes/AddBraces/CSharpAddBracesCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/AddBraces/CSharpAddBracesCodeFixProvider.cs index 9d97e81df37fc..dc922f79f679d 100644 --- a/src/Analyzers/CSharp/CodeFixes/AddBraces/CSharpAddBracesCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/AddBraces/CSharpAddBracesCodeFixProvider.cs @@ -35,7 +35,10 @@ public override ImmutableArray FixableDiagnosticIds public sealed override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + CSharpAnalyzersResources.Add_braces, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Add_braces)), context.Diagnostics); return Task.CompletedTask; @@ -63,13 +66,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private sealed class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Add_braces, createChangedDocument, CSharpAnalyzersResources.Add_braces) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/ConvertNamespace/ConvertNamespaceCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/ConvertNamespace/ConvertNamespaceCodeFixProvider.cs index 22408004fec96..6b108cac38007 100644 --- a/src/Analyzers/CSharp/CodeFixes/ConvertNamespace/ConvertNamespaceCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/ConvertNamespace/ConvertNamespaceCodeFixProvider.cs @@ -47,7 +47,7 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) }); context.RegisterCodeFix( - new MyCodeAction(title, c => FixAsync(context.Document, diagnostic, c), equivalenceKey), + CodeAction.Create(title, c => FixAsync(context.Document, diagnostic, c), equivalenceKey), context.Diagnostics); return Task.CompletedTask; @@ -66,13 +66,5 @@ protected override async Task FixAllAsync( editor.OriginalRoot, await converted.GetRequiredSyntaxRootAsync(cancellationToken).ConfigureAwait(false)); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument, string equivalenceKey) - : base(title, createChangedDocument, equivalenceKey) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/MakeStructFieldsWritable/CSharpMakeStructFieldsWritableCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/MakeStructFieldsWritable/CSharpMakeStructFieldsWritableCodeFixProvider.cs index 4589db37d1033..cb01375c7b4df 100644 --- a/src/Analyzers/CSharp/CodeFixes/MakeStructFieldsWritable/CSharpMakeStructFieldsWritableCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/MakeStructFieldsWritable/CSharpMakeStructFieldsWritableCodeFixProvider.cs @@ -34,8 +34,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Make_readonly_fields_writable, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Make_readonly_fields_writable)), context.Diagnostics); return Task.CompletedTask; } @@ -73,13 +75,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Make_readonly_fields_writable, createChangedDocument, nameof(CSharpAnalyzersResources.Make_readonly_fields_writable)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryLambdaExpression/CSharpRemoveUnnecessaryLambdaExpressionCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryLambdaExpression/CSharpRemoveUnnecessaryLambdaExpressionCodeFixProvider.cs index 42e754fbb80e1..a8a691c04ee77 100644 --- a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryLambdaExpression/CSharpRemoveUnnecessaryLambdaExpressionCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryLambdaExpression/CSharpRemoveUnnecessaryLambdaExpressionCodeFixProvider.cs @@ -37,7 +37,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + CSharpAnalyzersResources.Remove_unnecessary_lambda_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Remove_unnecessary_lambda_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -65,13 +68,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Remove_unnecessary_lambda_expression, createChangedDocument, nameof(CSharpRemoveUnnecessaryLambdaExpressionCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseImplicitObjectCreation/CSharpUseImplicitObjectCreationCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseImplicitObjectCreation/CSharpUseImplicitObjectCreationCodeFixProvider.cs index ab7463f40ab3c..f648d20534010 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseImplicitObjectCreation/CSharpUseImplicitObjectCreationCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseImplicitObjectCreation/CSharpUseImplicitObjectCreationCodeFixProvider.cs @@ -39,7 +39,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + CSharpAnalyzersResources.Use_new, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_new)), context.Diagnostics); return Task.CompletedTask; } @@ -74,13 +77,5 @@ private static SyntaxToken WithoutTrailingWhitespace(SyntaxToken newKeyword) ? newKeyword.WithoutTrailingTrivia() : newKeyword; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_new, createChangedDocument, CSharpAnalyzersResources.Use_new) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseImplicitTypeCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseImplicitTypeCodeFixProvider.cs index 95b776c1e364a..0076a21aa33ee 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseImplicitTypeCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseImplicitTypeCodeFixProvider.cs @@ -36,7 +36,10 @@ public UseImplicitTypeCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + CSharpAnalyzersResources.use_var_instead_of_explicit_type, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.use_var_instead_of_explicit_type)), context.Diagnostics); return Task.CompletedTask; @@ -65,15 +68,5 @@ internal static void ReplaceTypeWithVar(SyntaxEditor editor, TypeSyntax type) editor.ReplaceNode(type, implicitType); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.use_var_instead_of_explicit_type, - createChangedDocument, - CSharpAnalyzersResources.use_var_instead_of_explicit_type) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseIndexOperatorCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseIndexOperatorCodeFixProvider.cs index e3ebdf74ae9f6..ed3589b9a0d07 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseIndexOperatorCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseIndexOperatorCodeFixProvider.cs @@ -36,8 +36,10 @@ public CSharpUseIndexOperatorCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_index_operator, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Use_index_operator)), context.Diagnostics); return Task.CompletedTask; @@ -59,13 +61,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_index_operator, createChangedDocument, CSharpAnalyzersResources.Use_index_operator) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs index a6cf1401a8875..eec9ceb27bf0a 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs @@ -39,7 +39,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + CSharpAnalyzersResources.Prefer_null_check_over_type_check, + c => FixAsync(context.Document, diagnostic, c), + nameof(CSharpAnalyzersResources.Prefer_null_check_over_type_check)), context.Diagnostics); return Task.CompletedTask; @@ -70,13 +73,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Prefer_null_check_over_type_check, createChangedDocument, nameof(CSharpAnalyzersResources.Prefer_null_check_over_type_check)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpUseNotPatternCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpUseNotPatternCodeFixProvider.cs index d27e1c0d1b5b9..3b8187308085c 100644 --- a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpUseNotPatternCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpUseNotPatternCodeFixProvider.cs @@ -34,8 +34,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_pattern_matching, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_pattern_matching)), context.Diagnostics); return Task.CompletedTask; } @@ -74,13 +76,5 @@ private static void ProcessDiagnostic( negated.WithPrependedLeadingTrivia(notExpression.GetLeadingTrivia()) .WithAppendedTrailingTrivia(notExpression.GetTrailingTrivia())); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_pattern_matching, createChangedDocument, nameof(CSharpUseNotPatternCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseTupleSwap/CSharpUseTupleSwapCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseTupleSwap/CSharpUseTupleSwapCodeFixProvider.cs index e61c3fa4744b7..fee98bf57f5af 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseTupleSwap/CSharpUseTupleSwapCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseTupleSwap/CSharpUseTupleSwapCodeFixProvider.cs @@ -37,8 +37,10 @@ public CSharpUseTupleSwapCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_tuple_to_swap_values, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_tuple_to_swap_values)), context.Diagnostics); return Task.CompletedTask; } @@ -75,13 +77,5 @@ private static void FixOne( editor.ReplaceNode(localDeclarationStatement, tupleAssignmentStatement.WithTriviaFrom(localDeclarationStatement)); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_tuple_to_swap_values, createChangedDocument, nameof(CSharpAnalyzersResources.Use_tuple_to_swap_values)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/AddRequiredParentheses/AddRequiredParenthesesCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/AddRequiredParentheses/AddRequiredParenthesesCodeFixProvider.cs index 3098f0ab1180b..56443cecd718e 100644 --- a/src/Analyzers/Core/CodeFixes/AddRequiredParentheses/AddRequiredParenthesesCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/AddRequiredParentheses/AddRequiredParenthesesCodeFixProvider.cs @@ -36,7 +36,8 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var firstDiagnostic = context.Diagnostics[0]; context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( + AnalyzersResources.Add_parentheses_for_clarity, c => FixAsync(context.Document, firstDiagnostic, c), firstDiagnostic.Properties[AddRequiredParenthesesConstants.EquivalenceKey]!), context.Diagnostics); @@ -63,13 +64,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument, string equivalenceKey) - : base(AnalyzersResources.Add_parentheses_for_clarity, createChangedDocument, equivalenceKey) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/ConvertTypeOfToNameOf/AbstractConvertTypeOfToNameOfCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/ConvertTypeOfToNameOf/AbstractConvertTypeOfToNameOfCodeFixProvider.cs index 118796b8f186e..9823450c46a1d 100644 --- a/src/Analyzers/Core/CodeFixes/ConvertTypeOfToNameOf/AbstractConvertTypeOfToNameOfCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/ConvertTypeOfToNameOf/AbstractConvertTypeOfToNameOfCodeFixProvider.cs @@ -20,11 +20,14 @@ internal abstract class AbstractConvertTypeOfToNameOfCodeFixProvider : SyntaxEdi { public sealed override ImmutableArray FixableDiagnosticIds => ImmutableArray.Create(IDEDiagnosticIds.ConvertTypeOfToNameOfDiagnosticId); + public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - GetCodeFixTitle(), - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + var title = GetCodeFixTitle(); + context.RegisterCodeFix(CodeAction.Create( + title, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + title), context.Diagnostics); return Task.CompletedTask; } @@ -54,13 +57,5 @@ public void ConvertTypeOfToNameOf(SemanticModel semanticModel, SyntaxEditor edit protected abstract SyntaxNode GetSymbolTypeExpression(SemanticModel model, SyntaxNode node, CancellationToken cancellationToken); protected abstract string GetCodeFixTitle(); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.cs index f229e7e3ed114..408f4c464f7ef 100644 --- a/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.cs @@ -27,7 +27,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) if (context.Document.Project.Solution.Workspace.CanApplyChange(ApplyChangesKind.ChangeDocumentInfo)) { context.RegisterCodeFix( - new MyCodeAction(AnalyzersResources.Change_namespace_to_match_folder_structure, cancellationToken => FixAllInDocumentAsync(context.Document, context.Diagnostics, cancellationToken)), + CodeAction.Create( + AnalyzersResources.Change_namespace_to_match_folder_structure, + cancellationToken => FixAllInDocumentAsync(context.Document, context.Diagnostics, cancellationToken), + nameof(AnalyzersResources.Change_namespace_to_match_folder_structure)), context.Diagnostics); } @@ -62,13 +65,5 @@ private static async Task FixAllInDocumentAsync(Document document, Imm public override FixAllProvider? GetFixAllProvider() => CustomFixAllProvider.Instance; - - private sealed class MyCodeAction : CustomCodeActions.SolutionChangeAction - { - public MyCodeAction(string title, Func> createChangedSolution) - : base(title, createChangedSolution, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/QualifyMemberAccess/AbstractQualifyMemberAccessCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/QualifyMemberAccess/AbstractQualifyMemberAccessCodeFixProvider.cs index 3800dba1d46f9..33e79e73ada4e 100644 --- a/src/Analyzers/Core/CodeFixes/QualifyMemberAccess/AbstractQualifyMemberAccessCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/QualifyMemberAccess/AbstractQualifyMemberAccessCodeFixProvider.cs @@ -26,9 +26,11 @@ public sealed override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - GetTitle(), - c => FixAsync(context.Document, context.Diagnostics[0], c)), + var title = GetTitle(); + context.RegisterCodeFix(CodeAction.Create( + title, + c => FixAsync(context.Document, context.Diagnostics[0], c), + title), context.Diagnostics); return Task.CompletedTask; } @@ -58,13 +60,5 @@ protected override Task FixAllAsync( } protected abstract TSimpleNameSyntax GetNode(Diagnostic diagnostic, CancellationToken cancellationToken); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveRedundantEquality/RemoveRedundantEqualityCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveRedundantEquality/RemoveRedundantEqualityCodeFixProvider.cs index dc06e6b518c90..474df681d96a5 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveRedundantEquality/RemoveRedundantEqualityCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveRedundantEquality/RemoveRedundantEqualityCodeFixProvider.cs @@ -34,9 +34,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { foreach (var diagnostic in context.Diagnostics) { - context.RegisterCodeFix(new MyCodeAction( + context.RegisterCodeFix(CodeAction.Create( AnalyzersResources.Remove_redundant_equality, - c => FixAsync(context.Document, diagnostic, c)), + c => FixAsync(context.Document, diagnostic, c), + nameof(AnalyzersResources.Remove_redundant_equality)), diagnostic); } @@ -82,13 +83,5 @@ static SyntaxNode WithElasticTrailingTrivia(SyntaxNode node) return node.WithTrailingTrivia(node.GetTrailingTrivia().Select(SyntaxTriviaExtensions.AsElastic)); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryImports/AbstractRemoveUnnecessaryImportsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryImports/AbstractRemoveUnnecessaryImportsCodeFixProvider.cs index a2c972c64da66..d2dd5596f67ca 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryImports/AbstractRemoveUnnecessaryImportsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryImports/AbstractRemoveUnnecessaryImportsCodeFixProvider.cs @@ -22,10 +22,12 @@ public sealed override FixAllProvider GetFixAllProvider() public sealed override Task RegisterCodeFixesAsync(CodeFixContext context) { + var title = GetTitle(); context.RegisterCodeFix( - new MyCodeAction( - GetTitle(), - c => RemoveUnnecessaryImportsAsync(context.Document, c)), + CodeAction.Create( + title, + c => RemoveUnnecessaryImportsAsync(context.Document, c), + title), context.Diagnostics); return Task.CompletedTask; } @@ -38,13 +40,5 @@ private static Task RemoveUnnecessaryImportsAsync( var service = document.GetRequiredLanguageService(); return service.RemoveUnnecessaryImportsAsync(document, cancellationToken); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryParentheses/AbstractRemoveUnnecessaryParenthesesCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryParentheses/AbstractRemoveUnnecessaryParenthesesCodeFixProvider.cs index 8444e2b14ba92..9b41661db9e06 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryParentheses/AbstractRemoveUnnecessaryParenthesesCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnnecessaryParentheses/AbstractRemoveUnnecessaryParenthesesCodeFixProvider.cs @@ -28,8 +28,10 @@ protected abstract bool CanRemoveParentheses( public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + CodeAction.Create( + AnalyzersResources.Remove_unnecessary_parentheses, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Remove_unnecessary_parentheses)), context.Diagnostics); return Task.CompletedTask; } @@ -49,13 +51,5 @@ protected override Task FixAllAsync( (_, currentRoot, current) => currentRoot.ReplaceNode(current, syntaxFacts.Unparenthesize(current)), cancellationToken); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Remove_unnecessary_parentheses, createChangedDocument, AnalyzersResources.Remove_unnecessary_parentheses) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs index 2d4ab370fd174..91a8c5b1eba0a 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs @@ -37,7 +37,10 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) if (root.FindNode(diagnostic.Location.SourceSpan) != null) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + new MyCodeAction( + AnalyzersResources.Remove_unnecessary_suppression, + c => FixAsync(context.Document, diagnostic, c), + nameof(AnalyzersResources.Remove_unnecessary_suppression)), diagnostic); } } @@ -53,13 +56,5 @@ protected override Task FixAllAsync(Document document, ImmutableArray> createChangedDocument) - : base(AnalyzersResources.Remove_unnecessary_suppression, createChangedDocument, nameof(RemoveUnnecessaryAttributeSuppressionsCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/SimplifyBooleanExpression/SimplifyConditionalCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/SimplifyBooleanExpression/SimplifyConditionalCodeFixProvider.cs index 9602b413c003e..6fe02c126c449 100644 --- a/src/Analyzers/Core/CodeFixes/SimplifyBooleanExpression/SimplifyConditionalCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/SimplifyBooleanExpression/SimplifyConditionalCodeFixProvider.cs @@ -34,8 +34,10 @@ public SimplifyConditionalCodeFixProvider() public sealed override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Simplify_conditional_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Simplify_conditional_expression)), context.Diagnostics); return Task.CompletedTask; @@ -74,13 +76,5 @@ protected sealed override async Task FixAllAsync( expr, generatorInternal.AddParentheses(replacement.WithTriviaFrom(expr))); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Simplify_conditional_expression, createChangedDocument, AnalyzersResources.Simplify_conditional_expression) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UpdateLegacySuppressions/UpdateLegacySuppressionsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UpdateLegacySuppressions/UpdateLegacySuppressionsCodeFixProvider.cs index c9ff7acfb47c9..fd66179626dda 100644 --- a/src/Analyzers/Core/CodeFixes/UpdateLegacySuppressions/UpdateLegacySuppressionsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UpdateLegacySuppressions/UpdateLegacySuppressionsCodeFixProvider.cs @@ -38,7 +38,10 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) root.FindNode(diagnostic.Location.SourceSpan, getInnermostNodeForTie: true) != null) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + CodeFixesResources.Update_suppression_format, + c => FixAsync(context.Document, diagnostic, c), + nameof(CodeFixesResources.Update_suppression_format)), diagnostic); } } @@ -55,13 +58,5 @@ protected override Task FixAllAsync(Document document, ImmutableArray> createChangedDocument) - : base(CodeFixesResources.Update_suppression_format, createChangedDocument, nameof(UpdateLegacySuppressionsCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseExplicitTupleName/UseExplicitTupleNameCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseExplicitTupleName/UseExplicitTupleNameCodeFixProvider.cs index c8271ef751b68..219d6bca92b9b 100644 --- a/src/Analyzers/Core/CodeFixes/UseExplicitTupleName/UseExplicitTupleNameCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseExplicitTupleName/UseExplicitTupleNameCodeFixProvider.cs @@ -31,8 +31,10 @@ public UseExplicitTupleNameCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_explicitly_provided_tuple_name, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Use_explicitly_provided_tuple_name)), context.Diagnostics); return Task.CompletedTask; } @@ -58,15 +60,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_explicitly_provided_tuple_name, - createChangedDocument, - AnalyzersResources.Use_explicitly_provided_tuple_name) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseInferredMemberName/AbstractUseInferredMemberNameCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseInferredMemberName/AbstractUseInferredMemberNameCodeFixProvider.cs index e9db689b6ee9d..aaaff6fb33f22 100644 --- a/src/Analyzers/Core/CodeFixes/UseInferredMemberName/AbstractUseInferredMemberNameCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseInferredMemberName/AbstractUseInferredMemberNameCodeFixProvider.cs @@ -24,8 +24,10 @@ internal abstract class AbstractUseInferredMemberNameCodeFixProvider : SyntaxEdi public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_inferred_member_name, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Use_inferred_member_name)), context.Diagnostics); return Task.CompletedTask; @@ -45,13 +47,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_inferred_member_name, createChangedDocument, AnalyzersResources.Use_inferred_member_name) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseIsNullCheck/AbstractUseIsNullForReferenceEqualsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseIsNullCheck/AbstractUseIsNullForReferenceEqualsCodeFixProvider.cs index 29266e98095ee..fab044b1c660a 100644 --- a/src/Analyzers/Core/CodeFixes/UseIsNullCheck/AbstractUseIsNullForReferenceEqualsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseIsNullCheck/AbstractUseIsNullForReferenceEqualsCodeFixProvider.cs @@ -40,7 +40,7 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var negated = diagnostic.Properties.ContainsKey(UseIsNullConstants.Negated); var title = GetTitle(negated, diagnostic.Location.SourceTree!.Options); context.RegisterCodeFix( - new MyCodeAction(title, c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create(title, c => FixAsync(context.Document, diagnostic, c), title), context.Diagnostics); } @@ -82,13 +82,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseThrowExpression/UseThrowExpressionCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseThrowExpression/UseThrowExpressionCodeFixProvider.cs index ca9f1ff663360..6a2389942d921 100644 --- a/src/Analyzers/Core/CodeFixes/UseThrowExpression/UseThrowExpressionCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseThrowExpression/UseThrowExpressionCodeFixProvider.cs @@ -38,7 +38,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + AnalyzersResources.Use_throw_expression, + c => FixAsync(context.Document, diagnostic, c), + nameof(AnalyzersResources.Use_throw_expression)), diagnostic); return Task.CompletedTask; @@ -68,14 +71,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction( - Func> createChangedDocument) - : base(AnalyzersResources.Use_throw_expression, createChangedDocument, nameof(AnalyzersResources.Use_throw_expression)) - { - } - } } } From 93650e6dbb1920037549d205c336528d53790f4f Mon Sep 17 00:00:00 2001 From: Youssef1313 Date: Mon, 4 Apr 2022 18:30:44 +0200 Subject: [PATCH 2/5] Remove more 'MyCodeAction's --- ...tchStatementToExpressionCodeFixProvider.cs | 13 ++++------- .../CSharpInlineDeclarationCodeFixProvider.cs | 16 ++++--------- ...ateWithConditionalAccessCodeFixProvider.cs | 14 ++++------- ...onsecutiveBracePlacementCodeFixProvider.cs | 13 ++++------- ...ctorInitializerPlacementCodeFixProvider.cs | 13 ++++------- ...beddedStatementPlacementCodeFixProvider.cs | 13 ++++------- ...moveConfusingSuppressionCodeFixProvider.cs | 12 ++-------- ...arpRemoveUnnecessaryCastCodeFixProvider.cs | 14 ++++------- ...essaryDiscardDesignationCodeFixProvider.cs | 14 ++++------- ...pSimplifyPropertyPatternCodeFixProvider.cs | 14 ++++------- ...rpTransposeRecordKeywordCodeFixProvider.cs | 14 ++++------- ...mpoundCoalesceAssignmentCodeFixProvider.cs | 14 ++++------- .../CSharpUseDeconstructionCodeFixProvider.cs | 13 ++++------- .../CSharpUseDefaultLiteralCodeFixProvider.cs | 14 ++++------- .../UseExplicitTypeCodeFixProvider.cs | 16 ++++--------- .../CSharpUseRangeOperatorCodeFixProvider.cs | 14 ++++------- ...rCastAndEqualityOperatorCodeFixProvider.cs | 10 +------- ...UseParameterNullCheckingCodeFixProvider.cs | 13 ++++------- .../CSharpAsAndNullCheckCodeFixProvider.cs | 14 ++++------- .../CSharpIsAndCastCheckCodeFixProvider.cs | 14 ++++------- .../UseSimpleUsingStatementCodeFixProvider.cs | 14 ++++------- ...bstractMakeFieldReadonlyCodeFixProvider.cs | 14 ++++------- ...cutiveStatementPlacementCodeFixProvider.cs | 14 ++++------- ...stractMultipleBlankLinesCodeFixProvider.cs | 14 ++++------- .../AbstractOrderModifiersCodeFixProvider.cs | 13 ++++------- .../AbstractPopulateSwitchCodeFixProvider.cs | 23 ++++++++----------- ...essaryPragmaSuppressionsCodeFixProvider.cs | 13 ++++------- ...tractRemoveUnusedMembersCodeFixProvider.cs | 14 ++++------- ...stractRemoveUnusedValuesCodeFixProvider.cs | 10 +------- ...actSimplifyInterpolationCodeFixProvider.cs | 14 ++++------- ...SimplifyLinqExpressionCodeFixProvider`3.cs | 14 ++++------- .../UseCoalesceExpressionCodeFixProvider.cs | 15 ++++-------- ...sceExpressionForNullableCodeFixProvider.cs | 15 ++++-------- ...UseCollectionInitializerCodeFixProvider.cs | 13 ++++------- ...actUseCompoundAssignmentCodeFixProvider.cs | 14 ++++------- ...lExpressionForAssignmentCodeFixProvider.cs | 13 ++++------- ...ionalExpressionForReturnCodeFixProvider.cs | 13 ++++------- ...stractUseNullPropagationCodeFixProvider.cs | 14 ++++------- ...ractUseObjectInitializerCodeFixProvider.cs | 13 ++++------- .../UseSystemHashCodeCodeFixProvider.cs | 14 ++++------- ...icRemoveUnnecessaryByValCodeFixProvider.vb | 14 ++++------- ...sicRemoveUnnecessaryCastCodeFixProvider.vb | 14 ++++------- ...icSimplifyObjectCreationCodeFixProvider.vb | 13 +++-------- ...lBasicUseIsNotExpressionCodeFixProvider.vb | 14 ++++------- 44 files changed, 172 insertions(+), 436 deletions(-) diff --git a/src/Analyzers/CSharp/CodeFixes/ConvertSwitchStatementToExpression/ConvertSwitchStatementToExpressionCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/ConvertSwitchStatementToExpression/ConvertSwitchStatementToExpressionCodeFixProvider.cs index 373b735e8a99b..24a22fe0acc59 100644 --- a/src/Analyzers/CSharp/CodeFixes/ConvertSwitchStatementToExpression/ConvertSwitchStatementToExpressionCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/ConvertSwitchStatementToExpression/ConvertSwitchStatementToExpressionCodeFixProvider.cs @@ -49,7 +49,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) } context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + CSharpAnalyzersResources.Convert_switch_statement_to_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Convert_switch_statement_to_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -113,13 +116,5 @@ protected override async Task FixAllAsync( } } } - - private sealed class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Convert_switch_statement_to_expression, createChangedDocument, nameof(CSharpAnalyzersResources.Convert_switch_statement_to_expression)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/InlineDeclaration/CSharpInlineDeclarationCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/InlineDeclaration/CSharpInlineDeclarationCodeFixProvider.cs index 2dd7c8d841248..5ab335d2f0a3e 100644 --- a/src/Analyzers/CSharp/CodeFixes/InlineDeclaration/CSharpInlineDeclarationCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/InlineDeclaration/CSharpInlineDeclarationCodeFixProvider.cs @@ -49,8 +49,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Inline_variable_declaration, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Inline_variable_declaration)), context.Diagnostics); return Task.CompletedTask; } @@ -424,15 +426,5 @@ private static bool TryGetSpeculativeSemanticModel( speculativeModel = null; return false; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Inline_variable_declaration, - createChangedDocument, - CSharpAnalyzersResources.Inline_variable_declaration) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/InvokeDelegateWithConditionalAccess/InvokeDelegateWithConditionalAccessCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/InvokeDelegateWithConditionalAccess/InvokeDelegateWithConditionalAccessCodeFixProvider.cs index 8ad1a0deae791..6ba8d251d6e39 100644 --- a/src/Analyzers/CSharp/CodeFixes/InvokeDelegateWithConditionalAccess/InvokeDelegateWithConditionalAccessCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/InvokeDelegateWithConditionalAccess/InvokeDelegateWithConditionalAccessCodeFixProvider.cs @@ -40,8 +40,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Simplify_delegate_invocation, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Simplify_delegate_invocation)), context.Diagnostics); return Task.CompletedTask; } @@ -158,13 +160,5 @@ private static T AppendTriviaWithoutEndOfLines(T newStatement, IfStatementSyn return newStatement.WithTrailingTrivia(expressionTriviaWithoutEndOfLine.Concat(ifStatementTrivia)); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Simplify_delegate_invocation, createChangedDocument, nameof(CSharpAnalyzersResources.Simplify_delegate_invocation)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/NewLines/ConsecutiveBracePlacement/ConsecutiveBracePlacementCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/NewLines/ConsecutiveBracePlacement/ConsecutiveBracePlacementCodeFixProvider.cs index 27550a8694c53..542304057ffa0 100644 --- a/src/Analyzers/CSharp/CodeFixes/NewLines/ConsecutiveBracePlacement/ConsecutiveBracePlacementCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/NewLines/ConsecutiveBracePlacement/ConsecutiveBracePlacementCodeFixProvider.cs @@ -37,7 +37,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => UpdateDocumentAsync(document, diagnostic, c)), + CodeAction.Create( + CSharpCodeFixesResources.Remove_blank_lines_between_braces, + c => UpdateDocumentAsync(document, diagnostic, c), + nameof(CSharpCodeFixesResources.Remove_blank_lines_between_braces)), context.Diagnostics); return Task.CompletedTask; } @@ -94,13 +97,5 @@ private static void FixOne( public override FixAllProvider GetFixAllProvider() => FixAllProvider.Create(async (context, document, diagnostics) => await FixAllAsync(document, diagnostics, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpCodeFixesResources.Remove_blank_lines_between_braces, createChangedDocument, CSharpCodeFixesResources.Remove_blank_lines_between_braces) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/NewLines/ConstructorInitializerPlacement/ConstructorInitializerPlacementCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/NewLines/ConstructorInitializerPlacement/ConstructorInitializerPlacementCodeFixProvider.cs index a3ab4712577ff..18a97dca1f1e7 100644 --- a/src/Analyzers/CSharp/CodeFixes/NewLines/ConstructorInitializerPlacement/ConstructorInitializerPlacementCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/NewLines/ConstructorInitializerPlacement/ConstructorInitializerPlacementCodeFixProvider.cs @@ -36,7 +36,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => UpdateDocumentAsync(document, ImmutableArray.Create(diagnostic), c)), + CodeAction.Create( + CSharpCodeFixesResources.Place_colon_on_following_line, + c => UpdateDocumentAsync(document, ImmutableArray.Create(diagnostic), c), + nameof(CSharpCodeFixesResources.Place_colon_on_following_line)), context.Diagnostics); return Task.CompletedTask; } @@ -112,13 +115,5 @@ static SyntaxToken ComputeNewCloseParen(SyntaxToken colonToken, SyntaxToken prev public override FixAllProvider? GetFixAllProvider() => FixAllProvider.Create(async (context, document, diagnostics) => await UpdateDocumentAsync(document, diagnostics, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpCodeFixesResources.Place_colon_on_following_line, createChangedDocument, CSharpCodeFixesResources.Place_colon_on_following_line) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/NewLines/EmbeddedStatementPlacement/EmbeddedStatementPlacementCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/NewLines/EmbeddedStatementPlacement/EmbeddedStatementPlacementCodeFixProvider.cs index e64daef64661a..dd41a9e4dc596 100644 --- a/src/Analyzers/CSharp/CodeFixes/NewLines/EmbeddedStatementPlacement/EmbeddedStatementPlacementCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/NewLines/EmbeddedStatementPlacement/EmbeddedStatementPlacementCodeFixProvider.cs @@ -37,7 +37,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => UpdateDocumentAsync(document, diagnostic, c)), + CodeAction.Create( + CSharpCodeFixesResources.Place_statement_on_following_line, + c => UpdateDocumentAsync(document, diagnostic, c), + nameof(CSharpCodeFixesResources.Place_statement_on_following_line)), context.Diagnostics); return Task.CompletedTask; } @@ -140,13 +143,5 @@ private static SyntaxToken AddLeadingTrivia(SyntaxToken token, SyntaxTrivia triv public override FixAllProvider GetFixAllProvider() => FixAllProvider.Create( async (context, document, diagnostics) => await FixAllAsync(document, diagnostics, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpCodeFixesResources.Place_statement_on_following_line, createChangedDocument, CSharpCodeFixesResources.Place_statement_on_following_line) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/RemoveConfusingSuppression/CSharpRemoveConfusingSuppressionCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/RemoveConfusingSuppression/CSharpRemoveConfusingSuppressionCodeFixProvider.cs index f22d1c740f438..0797fd8192caf 100644 --- a/src/Analyzers/CSharp/CodeFixes/RemoveConfusingSuppression/CSharpRemoveConfusingSuppressionCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/RemoveConfusingSuppression/CSharpRemoveConfusingSuppressionCodeFixProvider.cs @@ -42,14 +42,14 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var cancellationToken = context.CancellationToken; context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( CSharpAnalyzersResources.Remove_operator_preserves_semantics, c => FixAllAsync(document, diagnostics, negate: false, c), RemoveOperator), context.Diagnostics); context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( CSharpAnalyzersResources.Negate_expression_changes_semantics, c => FixAllAsync(document, diagnostics, negate: true, c), NegateExpression), @@ -104,13 +104,5 @@ await FixAllAsync( document, diagnostics, context.CodeActionEquivalenceKey == NegateExpression, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument, string equivalenceKey) - : base(title, createChangedDocument, equivalenceKey) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryCast/CSharpRemoveUnnecessaryCastCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryCast/CSharpRemoveUnnecessaryCastCodeFixProvider.cs index 8274c3447015c..33a9d2b774158 100644 --- a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryCast/CSharpRemoveUnnecessaryCastCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryCast/CSharpRemoveUnnecessaryCastCodeFixProvider.cs @@ -38,8 +38,10 @@ public CSharpRemoveUnnecessaryCastCodeFixProvider() public sealed override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Remove_Unnecessary_Cast, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Remove_Unnecessary_Cast)), context.Diagnostics); return Task.CompletedTask; } @@ -92,13 +94,5 @@ private ExpressionSyntax Recurse(ExpressionSyntax old) throw ExceptionUtilities.UnexpectedValue(old); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Remove_Unnecessary_Cast, createChangedDocument, nameof(AnalyzersResources.Remove_Unnecessary_Cast)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryDiscardDesignation/CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryDiscardDesignation/CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs index 51a563474c861..7270afc67306b 100644 --- a/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryDiscardDesignation/CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/RemoveUnnecessaryDiscardDesignation/CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs @@ -37,7 +37,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + CSharpAnalyzersResources.Remove_unnessary_discard, + c => FixAsync(context.Document, diagnostic, c), + nameof(CSharpAnalyzersResources.Remove_unnessary_discard)), diagnostic); return Task.CompletedTask; @@ -92,14 +95,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction( - Func> createChangedDocument) - : base(CSharpAnalyzersResources.Remove_unnessary_discard, createChangedDocument, CSharpAnalyzersResources.Remove_unnessary_discard) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/SimplifyPropertyPattern/CSharpSimplifyPropertyPatternCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/SimplifyPropertyPattern/CSharpSimplifyPropertyPatternCodeFixProvider.cs index 61ed86c7fbe7f..7fec44ac563c9 100644 --- a/src/Analyzers/CSharp/CodeFixes/SimplifyPropertyPattern/CSharpSimplifyPropertyPatternCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/SimplifyPropertyPattern/CSharpSimplifyPropertyPatternCodeFixProvider.cs @@ -36,8 +36,10 @@ public CSharpSimplifyPropertyPatternCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Simplify_property_pattern, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Simplify_property_pattern)), context.Diagnostics); return Task.CompletedTask; @@ -120,13 +122,5 @@ protected override Task FixAllAsync( // the result. return Merge(Merge(outerExpression, innerMemberAccess.Expression), innerMemberAccess.Name); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Simplify_property_pattern, createChangedDocument, nameof(CSharpAnalyzersResources.Simplify_property_pattern)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/TransposeRecordKeyword/CSharpTransposeRecordKeywordCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/TransposeRecordKeyword/CSharpTransposeRecordKeywordCodeFixProvider.cs index c19c14d8a628f..351b32c138378 100644 --- a/src/Analyzers/CSharp/CodeFixes/TransposeRecordKeyword/CSharpTransposeRecordKeywordCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/TransposeRecordKeyword/CSharpTransposeRecordKeywordCodeFixProvider.cs @@ -94,7 +94,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) TryGetTokens(recordDeclaration, out _, out _)) { context.RegisterCodeFix( - new MyCodeAction(c => this.FixAsync(document, diagnostic, c)), + CodeAction.Create( + CSharpCodeFixesResources.Fix_record_declaration, + c => this.FixAsync(document, diagnostic, c), + nameof(CSharpCodeFixesResources.Fix_record_declaration)), diagnostic); } @@ -126,14 +129,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction( - Func> createChangedDocument) - : base(CSharpCodeFixesResources.Fix_record_declaration, createChangedDocument, nameof(CSharpTransposeRecordKeywordCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseCompoundAssignment/CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseCompoundAssignment/CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs index de1ba38635c05..b8e9f53d85f2d 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseCompoundAssignment/CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseCompoundAssignment/CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs @@ -36,8 +36,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics[0]; - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(document, diagnostic, c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_compound_assignment, + c => FixAsync(document, diagnostic, c), + nameof(AnalyzersResources.Use_compound_assignment)), context.Diagnostics); return Task.CompletedTask; @@ -83,13 +85,5 @@ protected override async Task FixAllAsync( }); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_compound_assignment, createChangedDocument, AnalyzersResources.Use_compound_assignment) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseDeconstruction/CSharpUseDeconstructionCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseDeconstruction/CSharpUseDeconstructionCodeFixProvider.cs index 01cd9955a39d1..327e6fb9f2e12 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseDeconstruction/CSharpUseDeconstructionCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseDeconstruction/CSharpUseDeconstructionCodeFixProvider.cs @@ -37,7 +37,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics[0], c)), + CodeAction.Create( + CSharpAnalyzersResources.Deconstruct_variable_declaration, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Deconstruct_variable_declaration)), context.Diagnostics); return Task.CompletedTask; @@ -186,13 +189,5 @@ private SyntaxNodeOrToken ConvertTupleTypeElementComponent(SyntaxNodeOrToken nod node.Type, SyntaxFactory.SingleVariableDesignation(node.Identifier))); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Deconstruct_variable_declaration, createChangedDocument, CSharpAnalyzersResources.Deconstruct_variable_declaration) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseDefaultLiteral/CSharpUseDefaultLiteralCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseDefaultLiteral/CSharpUseDefaultLiteralCodeFixProvider.cs index b72d9e7b09bd6..8aca1035b89c6 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseDefaultLiteral/CSharpUseDefaultLiteralCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseDefaultLiteral/CSharpUseDefaultLiteralCodeFixProvider.cs @@ -37,8 +37,10 @@ public CSharpUseDefaultLiteralCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Simplify_default_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Simplify_default_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -73,13 +75,5 @@ await editor.ApplyExpressionLevelSemanticEditsAsync( SyntaxFactory.LiteralExpression(SyntaxKind.DefaultLiteralExpression).WithTriviaFrom(defaultExpression)), cancellationToken).ConfigureAwait(false); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Simplify_default_expression, createChangedDocument, CSharpAnalyzersResources.Simplify_default_expression) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseExplicitTypeCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseExplicitTypeCodeFixProvider.cs index 3b7508506e5ea..d7648163fc1c7 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseExplicitTypeCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseImplicitOrExplicitType/UseExplicitTypeCodeFixProvider.cs @@ -37,8 +37,10 @@ public UseExplicitTypeCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_explicit_type_instead_of_var, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_explicit_type_instead_of_var)), context.Diagnostics); return Task.CompletedTask; @@ -161,15 +163,5 @@ private static ExpressionSyntax GenerateTupleDeclaration(ITypeSymbol typeSymbol, SyntaxFactory.Token(SyntaxKind.CloseParenToken)) .WithTrailingTrivia(parensDesignation.GetTrailingTrivia()); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_explicit_type_instead_of_var, - createChangedDocument, - CSharpAnalyzersResources.Use_explicit_type_instead_of_var) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseRangeOperatorCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseRangeOperatorCodeFixProvider.cs index b481faf807eb7..177a9bb272b1d 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseRangeOperatorCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseIndexOrRangeOperator/CSharpUseRangeOperatorCodeFixProvider.cs @@ -41,8 +41,10 @@ public CSharpUseRangeOperatorCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_range_operator, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Use_range_operator)), context.Diagnostics); return Task.CompletedTask; @@ -217,13 +219,5 @@ private static bool IsFromEnd( return false; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_range_operator, createChangedDocument, CSharpAnalyzersResources.Use_range_operator) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseIsNullCheckForCastAndEqualityOperatorCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseIsNullCheckForCastAndEqualityOperatorCodeFixProvider.cs index cf99552eb8019..46344e04300a7 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseIsNullCheckForCastAndEqualityOperatorCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseIsNullCheckForCastAndEqualityOperatorCodeFixProvider.cs @@ -47,7 +47,7 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var title = GetTitle(negated, diagnostic.Location.SourceTree!.Options); context.RegisterCodeFix( - new MyCodeAction(title, c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create(title, c => FixAsync(context.Document, diagnostic, c), title), context.Diagnostics); } @@ -109,13 +109,5 @@ private static IsPatternExpressionSyntax Rewrite( Token(SyntaxKind.IsKeyword).WithTriviaFrom(binary.OperatorToken), ConstantPattern(nullLiteral).WithTriviaFrom(binary.Right)); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseParameterNullChecking/CSharpUseParameterNullCheckingCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseParameterNullChecking/CSharpUseParameterNullCheckingCodeFixProvider.cs index be70fadf101b2..2223988c12c77 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseParameterNullChecking/CSharpUseParameterNullCheckingCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseParameterNullChecking/CSharpUseParameterNullCheckingCodeFixProvider.cs @@ -37,7 +37,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var diagnostic = context.Diagnostics[0]; context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + CSharpAnalyzersResources.Use_parameter_null_checking, + c => FixAsync(context.Document, diagnostic, c), + nameof(CSharpAnalyzersResources.Use_parameter_null_checking)), context.Diagnostics); return Task.CompletedTask; } @@ -96,13 +99,5 @@ protected override Task FixAllAsync( return Task.CompletedTask; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_parameter_null_checking, createChangedDocument, nameof(CSharpUseParameterNullCheckingCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpAsAndNullCheckCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpAsAndNullCheckCodeFixProvider.cs index c95bf01481667..0008363b4161c 100644 --- a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpAsAndNullCheckCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpAsAndNullCheckCodeFixProvider.cs @@ -37,8 +37,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_pattern_matching, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_pattern_matching)), context.Diagnostics); return Task.CompletedTask; } @@ -156,13 +158,5 @@ private static ExpressionSyntax GetCondition( // In C# 8 and lower, convert to `!(x is string s)` return SyntaxFactory.PrefixUnaryExpression(SyntaxKind.LogicalNotExpression, isPatternExpression.Parenthesize()); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_pattern_matching, createChangedDocument, nameof(CSharpAsAndNullCheckCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpIsAndCastCheckCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpIsAndCastCheckCodeFixProvider.cs index 0bd39de79a50e..4b1213926ef9f 100644 --- a/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpIsAndCastCheckCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UsePatternMatching/CSharpIsAndCastCheckCodeFixProvider.cs @@ -37,8 +37,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_pattern_matching, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(CSharpAnalyzersResources.Use_pattern_matching)), context.Diagnostics); return Task.CompletedTask; } @@ -104,13 +106,5 @@ private static IfStatementSyntax GetUpdatedIfStatement( return newIf.WithAdditionalAnnotations(Formatter.Annotation); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_pattern_matching, createChangedDocument, nameof(CSharpIsAndCastCheckCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/CSharp/CodeFixes/UseSimpleUsingStatement/UseSimpleUsingStatementCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseSimpleUsingStatement/UseSimpleUsingStatementCodeFixProvider.cs index cdfa96f2030cf..e94443b463cdd 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseSimpleUsingStatement/UseSimpleUsingStatementCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseSimpleUsingStatement/UseSimpleUsingStatementCodeFixProvider.cs @@ -41,8 +41,10 @@ public UseSimpleUsingStatementCodeFixProvider() public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + CSharpAnalyzersResources.Use_simple_using_statement, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(CSharpAnalyzersResources.Use_simple_using_statement)), context.Diagnostics); return Task.CompletedTask; @@ -174,13 +176,5 @@ private static LocalDeclarationStatementSyntax Convert(UsingStatementSyntax usin usingStatement.Declaration, Token(SyntaxKind.SemicolonToken)).WithTrailingTrivia(usingStatement.CloseParenToken.TrailingTrivia); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Use_simple_using_statement, createChangedDocument, CSharpAnalyzersResources.Use_simple_using_statement) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/MakeFieldReadonly/AbstractMakeFieldReadonlyCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/MakeFieldReadonly/AbstractMakeFieldReadonlyCodeFixProvider.cs index 08e7593b267ff..34efa72253992 100644 --- a/src/Analyzers/Core/CodeFixes/MakeFieldReadonly/AbstractMakeFieldReadonlyCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/MakeFieldReadonly/AbstractMakeFieldReadonlyCodeFixProvider.cs @@ -31,8 +31,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Add_readonly_modifier, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Add_readonly_modifier)), context.Diagnostics); return Task.CompletedTask; } @@ -100,13 +102,5 @@ private async Task MakeFieldReadonlyAsync( private static DeclarationModifiers WithReadOnly(DeclarationModifiers modifiers) => (modifiers - DeclarationModifiers.Volatile) | DeclarationModifiers.ReadOnly; - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Add_readonly_modifier, createChangedDocument, nameof(AnalyzersResources.Add_readonly_modifier)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/NewLines/ConsecutiveStatementPlacement/ConsecutiveStatementPlacementCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/NewLines/ConsecutiveStatementPlacement/ConsecutiveStatementPlacementCodeFixProvider.cs index 2c6cd6f53a56f..cdb10c3daf4ca 100644 --- a/src/Analyzers/Core/CodeFixes/NewLines/ConsecutiveStatementPlacement/ConsecutiveStatementPlacementCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/NewLines/ConsecutiveStatementPlacement/ConsecutiveStatementPlacementCodeFixProvider.cs @@ -34,8 +34,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var document = context.Document; var diagnostic = context.Diagnostics.First(); - context.RegisterCodeFix(new MyCodeAction( - c => UpdateDocumentAsync(document, diagnostic, c)), + context.RegisterCodeFix(CodeAction.Create( + CodeFixesResources.Add_blank_line_after_block, + c => UpdateDocumentAsync(document, diagnostic, c), + nameof(CodeFixesResources.Add_blank_line_after_block)), context.Diagnostics); return Task.CompletedTask; } @@ -67,13 +69,5 @@ public static async Task FixAllAsync(Document document, ImmutableArray public override FixAllProvider GetFixAllProvider() => FixAllProvider.Create(async (context, document, diagnostics) => await FixAllAsync(document, diagnostics, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CodeFixesResources.Add_blank_line_after_block, createChangedDocument, CodeFixesResources.Add_blank_line_after_block) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs index 3ca5b9f2d7c08..c2dfd7327f8fc 100644 --- a/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs @@ -34,8 +34,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) { var document = context.Document; var diagnostic = context.Diagnostics.First(); - context.RegisterCodeFix(new MyCodeAction( - c => UpdateDocumentAsync(document, diagnostic, c)), + context.RegisterCodeFix(CodeAction.Create( + Remove_extra_blank_lines, + c => UpdateDocumentAsync(document, diagnostic, c), + nameof(Remove_extra_blank_lines)), context.Diagnostics); return Task.CompletedTask; } @@ -146,13 +148,5 @@ private static bool IsEndOfLine(ISyntaxKindsService syntaxKinds, SyntaxTriviaLis public override FixAllProvider? GetFixAllProvider() => FixAllProvider.Create(async (context, document, diagnostics) => await FixAllAsync(document, diagnostics, context.CancellationToken).ConfigureAwait(false)); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(CodeFixesResources.Remove_extra_blank_lines, createChangedDocument, CodeFixesResources.Remove_extra_blank_lines) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/OrderModifiers/AbstractOrderModifiersCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/OrderModifiers/AbstractOrderModifiersCodeFixProvider.cs index fd2a8bb32a8f3..5735859aa0ed1 100644 --- a/src/Analyzers/Core/CodeFixes/OrderModifiers/AbstractOrderModifiersCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/OrderModifiers/AbstractOrderModifiersCodeFixProvider.cs @@ -48,7 +48,10 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) if (_syntaxFacts.GetModifiers(syntaxNode) != default) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics[0], c)), + CodeAction.Create( + AnalyzersResources.Order_modifiers, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Order_modifiers)), context.Diagnostics); } } @@ -89,13 +92,5 @@ int CompareModifiers(SyntaxToken t1, SyntaxToken t2) int GetOrder(SyntaxToken token) => preferredOrder.TryGetValue(token.RawKind, out var value) ? value : int.MaxValue; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Order_modifiers, createChangedDocument, AnalyzersResources.Order_modifiers) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/PopulateSwitch/AbstractPopulateSwitchCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/PopulateSwitch/AbstractPopulateSwitchCodeFixProvider.cs index 0cb1d3b361882..038ed1a403f0a 100644 --- a/src/Analyzers/Core/CodeFixes/PopulateSwitch/AbstractPopulateSwitchCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/PopulateSwitch/AbstractPopulateSwitchCodeFixProvider.cs @@ -63,33 +63,36 @@ public sealed override Task RegisterCodeFixesAsync(CodeFixContext context) if (missingCases) { context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( AnalyzersResources.Add_missing_cases, c => FixAsync(document, diagnostic, addCases: true, addDefaultCase: false, - cancellationToken: c)), + cancellationToken: c), + nameof(AnalyzersResources.Add_missing_cases)), context.Diagnostics); } if (missingDefaultCase) { context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( CodeFixesResources.Add_default_case, c => FixAsync(document, diagnostic, addCases: false, addDefaultCase: true, - cancellationToken: c)), + cancellationToken: c), + nameof(CodeFixesResources.Add_default_case)), context.Diagnostics); } if (missingCases && missingDefaultCase) { context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( CodeFixesResources.Add_both, c => FixAsync(document, diagnostic, addCases: true, addDefaultCase: true, - cancellationToken: c)), + cancellationToken: c), + nameof(CodeFixesResources.Add_both)), context.Diagnostics); } @@ -214,13 +217,5 @@ protected override Task FixAllAsync( addCases: true, addDefaultCase: true, cancellationToken: cancellationToken); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument) - : base(title, createChangedDocument, title) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryPragmaSuppressionsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryPragmaSuppressionsCodeFixProvider.cs index eb7afd7f56f29..fa6d04b3c766a 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryPragmaSuppressionsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryPragmaSuppressionsCodeFixProvider.cs @@ -44,7 +44,10 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) root.FindTrivia(diagnostic.Location.SourceSpan.Start).HasStructure) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, diagnostic, c)), + CodeAction.Create( + AnalyzersResources.Remove_unnecessary_suppression, + c => FixAsync(context.Document, diagnostic, c), + nameof(AnalyzersResources.Remove_unnecessary_suppression)), diagnostic); } } @@ -97,13 +100,5 @@ static void RemoveNode( } } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Remove_unnecessary_suppression, createChangedDocument, nameof(RemoveUnnecessaryInlineSuppressionsCodeFixProvider)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnusedMembers/AbstractRemoveUnusedMembersCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnusedMembers/AbstractRemoveUnusedMembersCodeFixProvider.cs index ded56b472ca8a..4d0c70b9a05a2 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnusedMembers/AbstractRemoveUnusedMembersCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnusedMembers/AbstractRemoveUnusedMembersCodeFixProvider.cs @@ -35,8 +35,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Remove_unused_member, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Remove_unused_member)), context.Diagnostics); return Task.CompletedTask; } @@ -121,13 +123,5 @@ protected static void AdjustAndAddAppropriateDeclaratorsToRemove(SyntaxNode pare declarators.RemoveAll(childDeclarators); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Remove_unused_member, createChangedDocument, nameof(AnalyzersResources.Remove_unused_member)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnusedParametersAndValues/AbstractRemoveUnusedValuesCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnusedParametersAndValues/AbstractRemoveUnusedValuesCodeFixProvider.cs index 2098335064734..aae086cbfd505 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnusedParametersAndValues/AbstractRemoveUnusedValuesCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnusedParametersAndValues/AbstractRemoveUnusedValuesCodeFixProvider.cs @@ -174,7 +174,7 @@ public sealed override async Task RegisterCodeFixesAsync(CodeFixContext context) } context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( title, c => FixAsync(context.Document, diagnostic, c), equivalenceKey: GetEquivalenceKey(preference, isRemovableAssignment)), @@ -910,14 +910,6 @@ private static async Task IsLocalDeclarationWithNoReferencesAsync( referencedSymbols.Single().Locations.IsEmpty(); } - private sealed class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(string title, Func> createChangedDocument, string equivalenceKey) - : base(title, createChangedDocument, equivalenceKey) - { - } - } - protected sealed class UniqueVariableNameGenerator : IDisposable { private readonly SyntaxNode _memberDeclaration; diff --git a/src/Analyzers/Core/CodeFixes/SimplifyInterpolation/AbstractSimplifyInterpolationCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/SimplifyInterpolation/AbstractSimplifyInterpolationCodeFixProvider.cs index 963a414d5764b..ad547210dd073 100644 --- a/src/Analyzers/Core/CodeFixes/SimplifyInterpolation/AbstractSimplifyInterpolationCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/SimplifyInterpolation/AbstractSimplifyInterpolationCodeFixProvider.cs @@ -42,8 +42,10 @@ internal abstract class AbstractSimplifyInterpolationCodeFixProvider< public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Simplify_interpolation, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Simplify_interpolation)), context.Diagnostics); return Task.CompletedTask; } @@ -106,13 +108,5 @@ private TInterpolationSyntax Update( return result; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Simplify_interpolation, createChangedDocument, AnalyzersResources.Simplify_interpolation) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/SimplifyLinqExpression/AbstractSimplifyLinqExpressionCodeFixProvider`3.cs b/src/Analyzers/Core/CodeFixes/SimplifyLinqExpression/AbstractSimplifyLinqExpressionCodeFixProvider`3.cs index a46cbfacc40b4..d805ed1b800c2 100644 --- a/src/Analyzers/Core/CodeFixes/SimplifyLinqExpression/AbstractSimplifyLinqExpressionCodeFixProvider`3.cs +++ b/src/Analyzers/Core/CodeFixes/SimplifyLinqExpression/AbstractSimplifyLinqExpressionCodeFixProvider`3.cs @@ -27,8 +27,10 @@ public sealed override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Simplify_LINQ_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Simplify_LINQ_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -69,13 +71,5 @@ static TInvocationExpressionSyntax GetInvocation(SyntaxNode root, Diagnostic dia return (expression, name, arguments); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Simplify_LINQ_expression, createChangedDocument, AnalyzersResources.Simplify_LINQ_expression) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionCodeFixProvider.cs index 28b1ce648075d..0689afde32485 100644 --- a/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionCodeFixProvider.cs @@ -35,8 +35,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_coalesce_expression, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Use_coalesce_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -105,14 +107,5 @@ private static SyntaxNode GetCoalesceExpression( ? generator.CoalesceExpression(conditionalPartLow, syntaxFacts.WalkDownParentheses(currentWhenTrue)) : generator.CoalesceExpression(conditionalPartLow, syntaxFacts.WalkDownParentheses(currentWhenFalse)); } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_coalesce_expression, createChangedDocument, nameof(AnalyzersResources.Use_coalesce_expression)) - { - - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionForNullableCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionForNullableCodeFixProvider.cs index e637ffbe5be59..5b06b8388e778 100644 --- a/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionForNullableCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseCoalesceExpression/UseCoalesceExpressionForNullableCodeFixProvider.cs @@ -34,8 +34,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_coalesce_expression, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Use_coalesce_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -81,14 +83,5 @@ protected override async Task FixAllAsync( }); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_coalesce_expression, createChangedDocument, nameof(AnalyzersResources.Use_coalesce_expression)) - { - - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseCollectionInitializer/AbstractUseCollectionInitializerCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseCollectionInitializer/AbstractUseCollectionInitializerCodeFixProvider.cs index 30cf4e5ab1441..02bb361d6cb05 100644 --- a/src/Analyzers/Core/CodeFixes/UseCollectionInitializer/AbstractUseCollectionInitializerCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseCollectionInitializer/AbstractUseCollectionInitializerCodeFixProvider.cs @@ -47,7 +47,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + AnalyzersResources.Collection_initialization_can_be_simplified, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Collection_initialization_can_be_simplified)), context.Diagnostics); return Task.CompletedTask; } @@ -116,13 +119,5 @@ protected override async Task FixAllAsync( protected abstract TStatementSyntax GetNewStatement( TStatementSyntax statement, TObjectCreationExpressionSyntax objectCreation, ImmutableArray matches); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Collection_initialization_can_be_simplified, createChangedDocument, nameof(AnalyzersResources.Collection_initialization_can_be_simplified)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseCompoundAssignment/AbstractUseCompoundAssignmentCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseCompoundAssignment/AbstractUseCompoundAssignmentCodeFixProvider.cs index 5d506744a74c8..aef3555b02d3d 100644 --- a/src/Analyzers/Core/CodeFixes/UseCompoundAssignment/AbstractUseCompoundAssignmentCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseCompoundAssignment/AbstractUseCompoundAssignmentCodeFixProvider.cs @@ -48,8 +48,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics[0]; - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(document, diagnostic, c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_compound_assignment, + c => FixAsync(document, diagnostic, c), + nameof(AnalyzersResources.Use_compound_assignment)), context.Diagnostics); return Task.CompletedTask; @@ -113,13 +115,5 @@ protected virtual bool PreferPostfix(ISyntaxFactsService syntaxFacts, TAssignmen // ++x to ensure that we preserve semantics. return false; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_compound_assignment, createChangedDocument, AnalyzersResources.Use_compound_assignment) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForAssignment/AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForAssignment/AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs index 01e8bd060b48a..f3f6fec3ca341 100644 --- a/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForAssignment/AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForAssignment/AbstractUseConditionalExpressionForAssignmentCodeFixProvider.cs @@ -46,7 +46,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + AnalyzersResources.Convert_to_conditional_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Convert_to_conditional_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -260,13 +263,5 @@ private bool ReferencesLocalVariable(IOperation operation, ILocalSymbol variable return false; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Convert_to_conditional_expression, createChangedDocument, IDEDiagnosticIds.UseConditionalExpressionForAssignmentDiagnosticId) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForReturn/AbstractUseConditionalExpressionForReturnCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForReturn/AbstractUseConditionalExpressionForReturnCodeFixProvider.cs index b2500a3767d6f..562e575fd11e2 100644 --- a/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForReturn/AbstractUseConditionalExpressionForReturnCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseConditionalExpression/ForReturn/AbstractUseConditionalExpressionForReturnCodeFixProvider.cs @@ -36,7 +36,10 @@ public override ImmutableArray FixableDiagnosticIds public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + AnalyzersResources.Convert_to_conditional_expression, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Convert_to_conditional_expression)), context.Diagnostics); return Task.CompletedTask; } @@ -86,13 +89,5 @@ protected override async Task FixOneAsync( editor.RemoveNode(falseStatement.Syntax, GetRemoveOptions(syntaxFacts, falseStatement.Syntax)); } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Convert_to_conditional_expression, createChangedDocument, IDEDiagnosticIds.UseConditionalExpressionForReturnDiagnosticId) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseNullPropagation/AbstractUseNullPropagationCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseNullPropagation/AbstractUseNullPropagationCodeFixProvider.cs index 325b44e11577e..978708bd76f77 100644 --- a/src/Analyzers/Core/CodeFixes/UseNullPropagation/AbstractUseNullPropagationCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseNullPropagation/AbstractUseNullPropagationCodeFixProvider.cs @@ -50,8 +50,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(context.Document, context.Diagnostics[0], c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_null_propagation, + c => FixAsync(context.Document, context.Diagnostics[0], c), + nameof(AnalyzersResources.Use_null_propagation)), context.Diagnostics); return Task.CompletedTask; } @@ -156,13 +158,5 @@ private SyntaxNode CreateConditionalAccessExpression( return currentConditional; } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_null_propagation, createChangedDocument, nameof(AnalyzersResources.Use_null_propagation)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseObjectInitializer/AbstractUseObjectInitializerCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseObjectInitializer/AbstractUseObjectInitializerCodeFixProvider.cs index ed79af014c3bd..995d11fe20ff0 100644 --- a/src/Analyzers/Core/CodeFixes/UseObjectInitializer/AbstractUseObjectInitializerCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseObjectInitializer/AbstractUseObjectInitializerCodeFixProvider.cs @@ -45,7 +45,10 @@ protected override bool IncludeDiagnosticDuringFixAll(Diagnostic diagnostic) public override Task RegisterCodeFixesAsync(CodeFixContext context) { context.RegisterCodeFix( - new MyCodeAction(c => FixAsync(context.Document, context.Diagnostics.First(), c)), + CodeAction.Create( + AnalyzersResources.Object_initialization_can_be_simplified, + c => FixAsync(context.Document, context.Diagnostics.First(), c), + nameof(AnalyzersResources.Object_initialization_can_be_simplified)), context.Diagnostics); return Task.CompletedTask; } @@ -119,13 +122,5 @@ protected override async Task FixAllAsync( protected abstract TStatementSyntax GetNewStatement( TStatementSyntax statement, TObjectCreationExpressionSyntax objectCreation, ImmutableArray> matches); - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Object_initialization_can_be_simplified, createChangedDocument, nameof(AnalyzersResources.Object_initialization_can_be_simplified)) - { - } - } } } diff --git a/src/Analyzers/Core/CodeFixes/UseSystemHashCode/UseSystemHashCodeCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/UseSystemHashCode/UseSystemHashCodeCodeFixProvider.cs index fcd2a9d8956b2..f66e81ab9ce90 100644 --- a/src/Analyzers/Core/CodeFixes/UseSystemHashCode/UseSystemHashCodeCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/UseSystemHashCode/UseSystemHashCodeCodeFixProvider.cs @@ -35,8 +35,10 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics[0]; - context.RegisterCodeFix(new MyCodeAction( - c => FixAsync(document, diagnostic, c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Use_System_HashCode, + c => FixAsync(document, diagnostic, c), + nameof(AnalyzersResources.Use_System_HashCode)), context.Diagnostics); return Task.CompletedTask; } @@ -92,13 +94,5 @@ protected override async Task FixAllAsync( } } } - - private class MyCodeAction : CustomCodeActions.DocumentChangeAction - { - public MyCodeAction(Func> createChangedDocument) - : base(AnalyzersResources.Use_System_HashCode, createChangedDocument, AnalyzersResources.Use_System_HashCode) - { - } - } } } diff --git a/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryByVal/VisualBasicRemoveUnnecessaryByValCodeFixProvider.vb b/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryByVal/VisualBasicRemoveUnnecessaryByValCodeFixProvider.vb index 82de49db13484..eeedb4434f1b4 100644 --- a/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryByVal/VisualBasicRemoveUnnecessaryByValCodeFixProvider.vb +++ b/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryByVal/VisualBasicRemoveUnnecessaryByValCodeFixProvider.vb @@ -28,8 +28,10 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.RemoveUnnecessaryByVal Public Overrides Function RegisterCodeFixesAsync(context As CodeFixContext) As Task For Each diagnostic In context.Diagnostics - context.RegisterCodeFix(New MyCodeAction( - Function(ct) FixAsync(context.Document, diagnostic, ct)), + context.RegisterCodeFix(CodeAction.Create( + VisualBasicAnalyzersResources.Remove_ByVal, + Function(ct) FixAsync(context.Document, diagnostic, ct), + NameOf(VisualBasicAnalyzersResources.Remove_ByVal)), diagnostic) Next @@ -44,13 +46,5 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.RemoveUnnecessaryByVal editor.ReplaceNode(node, node.WithModifiers(tokenList)) Next End Function - - Private Class MyCodeAction - Inherits CustomCodeActions.DocumentChangeAction - - Friend Sub New(createChangedDocument As Func(Of CancellationToken, Task(Of Document))) - MyBase.New(VisualBasicAnalyzersResources.Remove_ByVal, createChangedDocument, NameOf(VisualBasicAnalyzersResources.Remove_ByVal)) - End Sub - End Class End Class End Namespace diff --git a/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryCast/VisualBasicRemoveUnnecessaryCastCodeFixProvider.vb b/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryCast/VisualBasicRemoveUnnecessaryCastCodeFixProvider.vb index 10059e139b180..cac1c5ffb91ce 100644 --- a/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryCast/VisualBasicRemoveUnnecessaryCastCodeFixProvider.vb +++ b/src/Analyzers/VisualBasic/CodeFixes/RemoveUnnecessaryCast/VisualBasicRemoveUnnecessaryCastCodeFixProvider.vb @@ -31,8 +31,10 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.RemoveUnnecessaryCast ImmutableArray.Create(IDEDiagnosticIds.RemoveUnnecessaryCastDiagnosticId) Public Overrides Function RegisterCodeFixesAsync(context As CodeFixContext) As Task - context.RegisterCodeFix(New MyCodeAction( - Function(c) FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + AnalyzersResources.Remove_Unnecessary_Cast, + Function(c) FixAsync(context.Document, context.Diagnostics.First(), c), + NameOf(AnalyzersResources.Remove_Unnecessary_Cast)), context.Diagnostics) Return Task.CompletedTask End Function @@ -158,13 +160,5 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.RemoveUnnecessaryCast Throw ExceptionUtilities.UnexpectedValue(old) End Function - - Private Class MyCodeAction - Inherits CustomCodeActions.DocumentChangeAction - - Public Sub New(createChangedDocument As Func(Of CancellationToken, Task(Of Document))) - MyBase.New(AnalyzersResources.Remove_Unnecessary_Cast, createChangedDocument, NameOf(AnalyzersResources.Remove_Unnecessary_Cast)) - End Sub - End Class End Class End Namespace diff --git a/src/Analyzers/VisualBasic/CodeFixes/SimplifyObjectCreation/VisualBasicSimplifyObjectCreationCodeFixProvider.vb b/src/Analyzers/VisualBasic/CodeFixes/SimplifyObjectCreation/VisualBasicSimplifyObjectCreationCodeFixProvider.vb index e9017da936990..9d9eec48bc5a4 100644 --- a/src/Analyzers/VisualBasic/CodeFixes/SimplifyObjectCreation/VisualBasicSimplifyObjectCreationCodeFixProvider.vb +++ b/src/Analyzers/VisualBasic/CodeFixes/SimplifyObjectCreation/VisualBasicSimplifyObjectCreationCodeFixProvider.vb @@ -26,9 +26,10 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.SimplifyObjectCreation Public Overrides Function RegisterCodeFixesAsync(context As CodeFixContext) As Task For Each diagnostic In context.Diagnostics - context.RegisterCodeFix(New MyCodeAction( + context.RegisterCodeFix(CodeAction.Create( VisualBasicCodeFixesResources.Simplify_object_creation, - Function(ct) FixAsync(context.Document, diagnostic, ct)), + Function(ct) FixAsync(context.Document, diagnostic, ct), + NameOf(VisualBasicCodeFixesResources.Simplify_object_creation)), diagnostic) Next @@ -47,13 +48,5 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.SimplifyObjectCreation editor.ReplaceNode(node, newNode) Next End Function - - Private Class MyCodeAction - Inherits CustomCodeActions.DocumentChangeAction - - Friend Sub New(title As String, createChangedDocument As Func(Of CancellationToken, Task(Of Document))) - MyBase.New(title, createChangedDocument, NameOf(VisualBasicCodeFixesResources.Simplify_object_creation)) - End Sub - End Class End Class End Namespace diff --git a/src/Analyzers/VisualBasic/CodeFixes/UseIsNotExpression/VisualBasicUseIsNotExpressionCodeFixProvider.vb b/src/Analyzers/VisualBasic/CodeFixes/UseIsNotExpression/VisualBasicUseIsNotExpressionCodeFixProvider.vb index 6bc3cc829269f..511485ff99336 100644 --- a/src/Analyzers/VisualBasic/CodeFixes/UseIsNotExpression/VisualBasicUseIsNotExpressionCodeFixProvider.vb +++ b/src/Analyzers/VisualBasic/CodeFixes/UseIsNotExpression/VisualBasicUseIsNotExpressionCodeFixProvider.vb @@ -26,8 +26,10 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.UseIsNotExpression Public Overrides ReadOnly Property FixableDiagnosticIds As ImmutableArray(Of String) = ImmutableArray.Create(IDEDiagnosticIds.UseIsNotExpressionDiagnosticId) Public Overrides Function RegisterCodeFixesAsync(context As CodeFixContext) As Task - context.RegisterCodeFix(New MyCodeAction( - Function(c) FixAsync(context.Document, context.Diagnostics.First(), c)), + context.RegisterCodeFix(CodeAction.Create( + VisualBasicAnalyzersResources.Use_IsNot_expression, + Function(c) FixAsync(context.Document, context.Diagnostics.First(), c), + NameOf(VisualBasicAnalyzersResources.Use_IsNot_expression)), context.Diagnostics) Return Task.CompletedTask End Function @@ -76,13 +78,5 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.UseIsNotExpression notExpression, replacement.WithPrependedLeadingTrivia(notExpression.GetLeadingTrivia())) End Sub - - Private Class MyCodeAction - Inherits CustomCodeActions.DocumentChangeAction - - Public Sub New(createChangedDocument As Func(Of CancellationToken, Task(Of Document))) - MyBase.New(VisualBasicAnalyzersResources.Use_IsNot_expression, createChangedDocument, VisualBasicAnalyzersResources.Use_IsNot_expression) - End Sub - End Class End Class End Namespace From e2acea24ef5665090e61a75dfed23008bcaf920e Mon Sep 17 00:00:00 2001 From: Youssef1313 Date: Mon, 4 Apr 2022 18:41:19 +0200 Subject: [PATCH 3/5] One more that's not named MyCodeAction --- .../MisplacedUsingDirectivesCodeFixProvider.cs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/Analyzers/CSharp/CodeFixes/MisplacedUsingDirectives/MisplacedUsingDirectivesCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/MisplacedUsingDirectives/MisplacedUsingDirectivesCodeFixProvider.cs index 443f23137674d..540a1a2521913 100644 --- a/src/Analyzers/CSharp/CodeFixes/MisplacedUsingDirectives/MisplacedUsingDirectivesCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/MisplacedUsingDirectives/MisplacedUsingDirectivesCodeFixProvider.cs @@ -79,7 +79,10 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) foreach (var diagnostic in context.Diagnostics) { context.RegisterCodeFix( - new MoveMisplacedUsingsCodeAction(token => GetTransformedDocumentAsync(document, compilationUnit, GetAllUsingDirectives(compilationUnit), placement, token)), + CodeAction.Create( + CSharpAnalyzersResources.Move_misplaced_using_directives, + token => GetTransformedDocumentAsync(document, compilationUnit, GetAllUsingDirectives(compilationUnit), placement, token), + nameof(CSharpAnalyzersResources.Move_misplaced_using_directives)), diagnostic); } } @@ -426,13 +429,5 @@ private static CompilationUnitSyntax AddFileHeader(CompilationUnitSyntax compila return compilationUnit.ReplaceToken(firstToken, newFirstToken); } - - private class MoveMisplacedUsingsCodeAction : CustomCodeActions.DocumentChangeAction - { - public MoveMisplacedUsingsCodeAction(Func> createChangedDocument) - : base(CSharpAnalyzersResources.Move_misplaced_using_directives, createChangedDocument, nameof(CSharpAnalyzersResources.Move_misplaced_using_directives)) - { - } - } } } From 1880e6dc66e3bc5df282fba0a167d8295039ff72 Mon Sep 17 00:00:00 2001 From: Youssef1313 Date: Mon, 4 Apr 2022 20:53:26 +0200 Subject: [PATCH 4/5] Few fixes --- ...spaceToMatchFolderCodeFixProvider.CustomFixAllProvider.cs | 5 +++-- .../AbstractMultipleBlankLinesCodeFixProvider.cs | 4 ++-- .../RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.CustomFixAllProvider.cs b/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.CustomFixAllProvider.cs index 5d8049cb8a381..b7b8c464dcb15 100644 --- a/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.CustomFixAllProvider.cs +++ b/src/Analyzers/Core/CodeFixes/MatchFolderAndNamespace/AbstractChangeNamespaceToMatchFolderCodeFixProvider.CustomFixAllProvider.cs @@ -40,13 +40,14 @@ private class CustomFixAllProvider : FixAllProvider return null; var title = FixAllContextHelper.GetDefaultFixAllTitle(fixAllContext); - return new MyCodeAction( + return CodeAction.Create( title, cancellationToken => FixAllByDocumentAsync( fixAllContext.Project.Solution, diagnostics, fixAllContext.GetProgressTracker(), - cancellationToken)); + cancellationToken), + title); static async Task> GetSolutionDiagnosticsAsync(FixAllContext fixAllContext) { diff --git a/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs index c2dfd7327f8fc..df37361468f33 100644 --- a/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/NewLines/MultipleBlankLines/AbstractMultipleBlankLinesCodeFixProvider.cs @@ -35,9 +35,9 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var document = context.Document; var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix(CodeAction.Create( - Remove_extra_blank_lines, + CodeFixesResources.Remove_extra_blank_lines, c => UpdateDocumentAsync(document, diagnostic, c), - nameof(Remove_extra_blank_lines)), + nameof(CodeFixesResources.Remove_extra_blank_lines)), context.Diagnostics); return Task.CompletedTask; } diff --git a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs index 91a8c5b1eba0a..fe01682012524 100644 --- a/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs +++ b/src/Analyzers/Core/CodeFixes/RemoveUnnecessarySuppressions/RemoveUnnecessaryAttributeSuppressionsCodeFixProvider.cs @@ -37,7 +37,7 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context) if (root.FindNode(diagnostic.Location.SourceSpan) != null) { context.RegisterCodeFix( - new MyCodeAction( + CodeAction.Create( AnalyzersResources.Remove_unnecessary_suppression, c => FixAsync(context.Document, diagnostic, c), nameof(AnalyzersResources.Remove_unnecessary_suppression)), From c8876af06b9acfadaa660ebf8894ab530f6cadfc Mon Sep 17 00:00:00 2001 From: Youssef Victor Date: Mon, 4 Apr 2022 22:13:13 +0200 Subject: [PATCH 5/5] Fix formatting --- .../CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs index eec9ceb27bf0a..354beb592db11 100644 --- a/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs +++ b/src/Analyzers/CSharp/CodeFixes/UseIsNullCheck/CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs @@ -40,7 +40,7 @@ public override Task RegisterCodeFixesAsync(CodeFixContext context) var diagnostic = context.Diagnostics.First(); context.RegisterCodeFix( CodeAction.Create( - CSharpAnalyzersResources.Prefer_null_check_over_type_check, + CSharpAnalyzersResources.Prefer_null_check_over_type_check, c => FixAsync(context.Document, diagnostic, c), nameof(CSharpAnalyzersResources.Prefer_null_check_over_type_check)), context.Diagnostics);