1 implementation of IGroupedAnalyzerActions
Microsoft.CodeAnalysis (1)
DiagnosticAnalyzer\AnalyzerDriver.GroupedAnalyzerActions.cs (1)
20
private sealed class GroupedAnalyzerActions :
IGroupedAnalyzerActions
25 references to IGroupedAnalyzerActions
Microsoft.CodeAnalysis (25)
DiagnosticAnalyzer\AnalyzerDriver.cs (18)
106
private ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
>? _lazyPerSymbolAnalyzerActionsCache;
114
private ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
> PerSymbolAnalyzerActionsCache
433
_lazyPerSymbolAnalyzerActionsCache = new ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
>();
1760
var
perSymbolActions = hasPerSymbolActions ?
1893
IGroupedAnalyzerActions
additionalPerSymbolActions,
2104
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2114
var
allActions = EmptyGroupedActions;
2122
var
analyzerActions = await GetPerSymbolAnalyzerActionsAsync(symbol, analyzer, analysisScope.OriginalFilterFile?.SourceTree, analysisScope.OriginalFilterSpan, cancellationToken).ConfigureAwait(false);
2135
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2157
if (PerSymbolAnalyzerActionsCache.TryGetValue((namespaceOrType, analyzer), out
var
actions))
2162
var
allActions = await getAllActionsAsync(this, symbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2165
async ValueTask<
IGroupedAnalyzerActions
> getAllActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree? filterTree, TextSpan? filterSpan, CancellationToken cancellationToken)
2168
var
inheritedActions = await getInheritedActionsAsync(driver, symbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2181
async ValueTask<
IGroupedAnalyzerActions
> getInheritedActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree? filterTree, TextSpan? filterSpan, CancellationToken cancellationToken)
2186
var
containerActions = await driver.GetPerSymbolAnalyzerActionsAsync(symbol.ContainingSymbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2485
protected override
IGroupedAnalyzerActions
EmptyGroupedActions => GroupedAnalyzerActions.Empty;
2486
protected override
IGroupedAnalyzerActions
CreateGroupedActions(DiagnosticAnalyzer analyzer, in AnalyzerActions analyzerActions)
2496
IGroupedAnalyzerActions
additionalPerSymbolActions,
DiagnosticAnalyzer\AnalyzerDriver.GroupedAnalyzerActions.cs (3)
77
IGroupedAnalyzerActions
IGroupedAnalyzerActions
.Append(
IGroupedAnalyzerActions
igroupedAnalyzerActions)
DiagnosticAnalyzer\AnalyzerDriver.IGroupedAnalyzerActions.cs (4)
9
protected abstract
IGroupedAnalyzerActions
EmptyGroupedActions { get; }
10
protected abstract
IGroupedAnalyzerActions
CreateGroupedActions(DiagnosticAnalyzer analyzer, in AnalyzerActions analyzerActions);
16
IGroupedAnalyzerActions
Append(
IGroupedAnalyzerActions
groupedAnalyzerActions);