提交 52d22ace 编写于 作者: H Heejae Chang

PR feedback

renamed paramter to ignoreFullAnalysisOption
上级 621281ea
...@@ -90,7 +90,7 @@ public IEnumerable<DiagnosticData> ConvertToLocalDiagnostics(Document targetDocu ...@@ -90,7 +90,7 @@ public IEnumerable<DiagnosticData> ConvertToLocalDiagnostics(Document targetDocu
/// Return all diagnostics that belong to given project for the given StateSets (analyzers) either from cache or by calculating them /// Return all diagnostics that belong to given project for the given StateSets (analyzers) either from cache or by calculating them
/// </summary> /// </summary>
public async Task<ProjectAnalysisData> GetProjectAnalysisDataAsync( public async Task<ProjectAnalysisData> GetProjectAnalysisDataAsync(
CompilationWithAnalyzers analyzerDriverOpt, Project project, IEnumerable<StateSet> stateSets, bool ignoreOption, CancellationToken cancellationToken) CompilationWithAnalyzers analyzerDriverOpt, Project project, IEnumerable<StateSet> stateSets, bool ignoreFullAnalysisOptions, CancellationToken cancellationToken)
{ {
using (Logger.LogBlock(FunctionId.Diagnostics_ProjectDiagnostic, GetProjectLogMessage, project, stateSets, cancellationToken)) using (Logger.LogBlock(FunctionId.Diagnostics_ProjectDiagnostic, GetProjectLogMessage, project, stateSets, cancellationToken))
{ {
...@@ -107,7 +107,7 @@ public IEnumerable<DiagnosticData> ConvertToLocalDiagnostics(Document targetDocu ...@@ -107,7 +107,7 @@ public IEnumerable<DiagnosticData> ConvertToLocalDiagnostics(Document targetDocu
} }
// perf optimization. check whether we want to analyze this project or not. // perf optimization. check whether we want to analyze this project or not.
if (!await FullAnalysisEnabledAsync(project, ignoreOption, cancellationToken).ConfigureAwait(false)) if (!await FullAnalysisEnabledAsync(project, ignoreFullAnalysisOptions, cancellationToken).ConfigureAwait(false))
{ {
return new ProjectAnalysisData(project.Id, VersionStamp.Default, existingData.Result, ImmutableDictionary<DiagnosticAnalyzer, AnalysisResult>.Empty); return new ProjectAnalysisData(project.Id, VersionStamp.Default, existingData.Result, ImmutableDictionary<DiagnosticAnalyzer, AnalysisResult>.Empty);
} }
...@@ -402,12 +402,12 @@ private async Task UpdateAnalyzerTelemetryDataAsync(CompilationWithAnalyzers ana ...@@ -402,12 +402,12 @@ private async Task UpdateAnalyzerTelemetryDataAsync(CompilationWithAnalyzers ana
} }
} }
private static async Task<bool> FullAnalysisEnabledAsync(Project project, bool ignoreOption, CancellationToken cancellationToken) private static async Task<bool> FullAnalysisEnabledAsync(Project project, bool ignoreFullAnalysisOptions, CancellationToken cancellationToken)
{ {
var workspace = project.Solution.Workspace; var workspace = project.Solution.Workspace;
var language = project.Language; var language = project.Language;
if (ignoreOption) if (ignoreFullAnalysisOptions)
{ {
return await project.HasSuccessfullyLoadedAsync(cancellationToken).ConfigureAwait(false); return await project.HasSuccessfullyLoadedAsync(cancellationToken).ConfigureAwait(false);
} }
......
...@@ -399,8 +399,8 @@ protected override async Task AppendDiagnosticsAsync(Project project, IEnumerabl ...@@ -399,8 +399,8 @@ protected override async Task AppendDiagnosticsAsync(Project project, IEnumerabl
// unlike the suppressed (disabled) analyzer, we will include hidden diagnostic only analyzers here. // unlike the suppressed (disabled) analyzer, we will include hidden diagnostic only analyzers here.
var analyzerDriverOpt = await Owner._compilationManager.CreateAnalyzerDriverAsync(project, stateSets, IncludeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false); var analyzerDriverOpt = await Owner._compilationManager.CreateAnalyzerDriverAsync(project, stateSets, IncludeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false);
var ignoreOption = true; var ignoreFullAnalysisOptions = true;
var result = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreOption, cancellationToken).ConfigureAwait(false); var result = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreFullAnalysisOptions, cancellationToken).ConfigureAwait(false);
foreach (var stateSet in stateSets) foreach (var stateSet in stateSets)
{ {
...@@ -446,7 +446,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet) ...@@ -446,7 +446,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet)
// Here, we don't care what kind of analyzer (StateSet) is given. // Here, we don't care what kind of analyzer (StateSet) is given.
// We just create and use AnalyzerDriver with the given analyzer (StateSet). // We just create and use AnalyzerDriver with the given analyzer (StateSet).
var ignoreOption = true; var ignoreFullAnalysisOptions = true;
var analyzerDriverOpt = await Owner._compilationManager.CreateAnalyzerDriverAsync(project, stateSets, IncludeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false); var analyzerDriverOpt = await Owner._compilationManager.CreateAnalyzerDriverAsync(project, stateSets, IncludeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false);
if (documentId != null) if (documentId != null)
...@@ -464,7 +464,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet) ...@@ -464,7 +464,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet)
} }
case AnalysisKind.NonLocal: case AnalysisKind.NonLocal:
{ {
var nonLocalDocumentResult = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreOption, cancellationToken).ConfigureAwait(false); var nonLocalDocumentResult = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreFullAnalysisOptions, cancellationToken).ConfigureAwait(false);
var analysisResult = nonLocalDocumentResult.GetResult(stateSet.Analyzer); var analysisResult = nonLocalDocumentResult.GetResult(stateSet.Analyzer);
return GetResult(analysisResult, AnalysisKind.NonLocal, documentId); return GetResult(analysisResult, AnalysisKind.NonLocal, documentId);
} }
...@@ -474,7 +474,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet) ...@@ -474,7 +474,7 @@ private bool ShouldIncludeStateSet(Project project, StateSet stateSet)
} }
Contract.ThrowIfFalse(kind == AnalysisKind.NonLocal); Contract.ThrowIfFalse(kind == AnalysisKind.NonLocal);
var projectResult = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreOption, cancellationToken).ConfigureAwait(false); var projectResult = await Owner._executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreFullAnalysisOptions, cancellationToken).ConfigureAwait(false);
return projectResult.GetResult(stateSet.Analyzer).Others; return projectResult.GetResult(stateSet.Analyzer).Others;
} }
} }
......
...@@ -83,8 +83,8 @@ public override async Task AnalyzeProjectAsync(Project project, bool semanticsCh ...@@ -83,8 +83,8 @@ public override async Task AnalyzeProjectAsync(Project project, bool semanticsCh
var includeSuppressedDiagnostics = true; var includeSuppressedDiagnostics = true;
var analyzerDriverOpt = await _compilationManager.CreateAnalyzerDriverAsync(project, activeAnalyzers, includeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false); var analyzerDriverOpt = await _compilationManager.CreateAnalyzerDriverAsync(project, activeAnalyzers, includeSuppressedDiagnostics, cancellationToken).ConfigureAwait(false);
var ignoreOption = false; var ignoreFullAnalysisOptions = false;
var result = await _executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreOption, cancellationToken).ConfigureAwait(false); var result = await _executor.GetProjectAnalysisDataAsync(analyzerDriverOpt, project, stateSets, ignoreFullAnalysisOptions, cancellationToken).ConfigureAwait(false);
if (result.FromCache) if (result.FromCache)
{ {
RaiseProjectDiagnosticsIfNeeded(project, stateSets, result.Result); RaiseProjectDiagnosticsIfNeeded(project, stateSets, result.Result);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册