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)
111
private ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
>? _lazyPerSymbolAnalyzerActionsCache;
119
private ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
> PerSymbolAnalyzerActionsCache
438
_lazyPerSymbolAnalyzerActionsCache = new ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
>();
1777
var
perSymbolActions = hasPerSymbolActions ?
1915
IGroupedAnalyzerActions
additionalPerSymbolActions,
2133
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2143
var
allActions = EmptyGroupedActions;
2151
var
analyzerActions = await GetPerSymbolAnalyzerActionsAsync(symbol, analyzer, analysisScope.OriginalFilterFile?.SourceTree, analysisScope.OriginalFilterSpan, cancellationToken).ConfigureAwait(false);
2164
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2186
if (PerSymbolAnalyzerActionsCache.TryGetValue((namespaceOrType, analyzer), out
var
actions))
2191
var
allActions = await getAllActionsAsync(this, symbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2194
async ValueTask<
IGroupedAnalyzerActions
> getAllActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree? filterTree, TextSpan? filterSpan, CancellationToken cancellationToken)
2197
var
inheritedActions = await getInheritedActionsAsync(driver, symbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2210
async ValueTask<
IGroupedAnalyzerActions
> getInheritedActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree? filterTree, TextSpan? filterSpan, CancellationToken cancellationToken)
2215
var
containerActions = await driver.GetPerSymbolAnalyzerActionsAsync(symbol.ContainingSymbol, analyzer, filterTree, filterSpan, cancellationToken).ConfigureAwait(false);
2514
protected override
IGroupedAnalyzerActions
EmptyGroupedActions => GroupedAnalyzerActions.Empty;
2515
protected override
IGroupedAnalyzerActions
CreateGroupedActions(DiagnosticAnalyzer analyzer, in AnalyzerActions analyzerActions)
2525
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);