From de17f29dd427abc78bfd6ec295a820948d88ef28 Mon Sep 17 00:00:00 2001 From: Manish Vasani Date: Mon, 19 Apr 2021 03:56:18 -0700 Subject: [PATCH] Address feedback --- .../AbstractBuiltInCodeStyleDiagnosticAnalyzer_Core.cs | 10 +++++++--- .../MakeFieldReadonlyDiagnosticAnalyzer.cs | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Analyzers/Core/Analyzers/AbstractBuiltInCodeStyleDiagnosticAnalyzer_Core.cs b/src/Analyzers/Core/Analyzers/AbstractBuiltInCodeStyleDiagnosticAnalyzer_Core.cs index c34f2c550297a..8d0a0b3688a4f 100644 --- a/src/Analyzers/Core/Analyzers/AbstractBuiltInCodeStyleDiagnosticAnalyzer_Core.cs +++ b/src/Analyzers/Core/Analyzers/AbstractBuiltInCodeStyleDiagnosticAnalyzer_Core.cs @@ -65,12 +65,16 @@ protected static DiagnosticDescriptor CreateDescriptorWithId( customTags: DiagnosticCustomTags.Create(isUnnecessary, isConfigurable, enforceOnBuild)); #pragma warning restore RS0030 // Do not used banned APIs - // Code style analyzers should not run on generated code, unless explicitly required by the analyzer. - protected virtual GeneratedCodeAnalysisFlags GeneratedCodeAnalysisFlags => GeneratedCodeAnalysisFlags.None; + /// + /// Flag indicating whether or not analyzer should receive analysis callbacks for generated code. + /// By default, code style analyzers should not run on generated code, so the value is false. + /// + protected virtual bool ReceiveAnalysisCallbacksForGeneratedCode => false; public sealed override void Initialize(AnalysisContext context) { - context.ConfigureGeneratedCodeAnalysis(GeneratedCodeAnalysisFlags); + var flags = ReceiveAnalysisCallbacksForGeneratedCode ? GeneratedCodeAnalysisFlags.Analyze : GeneratedCodeAnalysisFlags.None; + context.ConfigureGeneratedCodeAnalysis(flags); context.EnableConcurrentExecution(); InitializeWorker(context); diff --git a/src/Analyzers/Core/Analyzers/MakeFieldReadonly/MakeFieldReadonlyDiagnosticAnalyzer.cs b/src/Analyzers/Core/Analyzers/MakeFieldReadonly/MakeFieldReadonlyDiagnosticAnalyzer.cs index ccf362a7ab32d..af266f53e39ad 100644 --- a/src/Analyzers/Core/Analyzers/MakeFieldReadonly/MakeFieldReadonlyDiagnosticAnalyzer.cs +++ b/src/Analyzers/Core/Analyzers/MakeFieldReadonly/MakeFieldReadonlyDiagnosticAnalyzer.cs @@ -32,7 +32,7 @@ public MakeFieldReadonlyDiagnosticAnalyzer() public override DiagnosticAnalyzerCategory GetAnalyzerCategory() => DiagnosticAnalyzerCategory.SemanticDocumentAnalysis; // We need to analyze generated code to get callbacks for read/writes to non-generated members in generated code. - protected override GeneratedCodeAnalysisFlags GeneratedCodeAnalysisFlags => GeneratedCodeAnalysisFlags.Analyze; + protected override bool ReceiveAnalysisCallbacksForGeneratedCode => true; protected override void InitializeWorker(AnalysisContext context) {