1 implementation of IGroupedAnalyzerActions
Microsoft.CodeAnalysis (1)
DiagnosticAnalyzer\AnalyzerDriver.GroupedAnalyzerActions.cs (1)
18
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
427
_lazyPerSymbolAnalyzerActionsCache = new ConcurrentDictionary<(INamespaceOrTypeSymbol, DiagnosticAnalyzer),
IGroupedAnalyzerActions
>();
1670
var
perSymbolActions = hasPerSymbolActions ?
1803
IGroupedAnalyzerActions
additionalPerSymbolActions,
2011
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2021
var
allActions = EmptyGroupedActions;
2029
var
analyzerActions = await GetPerSymbolAnalyzerActionsAsync(symbol, analyzer, cancellationToken).ConfigureAwait(false);
2042
private async ValueTask<
IGroupedAnalyzerActions
> GetPerSymbolAnalyzerActionsAsync(
2062
if (PerSymbolAnalyzerActionsCache.TryGetValue((namespaceOrType, analyzer), out
var
actions))
2067
var
allActions = await getAllActionsAsync(this, symbol, analyzer, cancellationToken).ConfigureAwait(false);
2070
async ValueTask<
IGroupedAnalyzerActions
> getAllActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, CancellationToken cancellationToken)
2073
var
inheritedActions = await getInheritedActionsAsync(driver, symbol, analyzer, cancellationToken).ConfigureAwait(false);
2086
async ValueTask<
IGroupedAnalyzerActions
> getInheritedActionsAsync(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, CancellationToken cancellationToken)
2091
var
containerActions = await driver.GetPerSymbolAnalyzerActionsAsync(symbol.ContainingSymbol, analyzer, cancellationToken).ConfigureAwait(false);
2385
protected override
IGroupedAnalyzerActions
EmptyGroupedActions => GroupedAnalyzerActions.Empty;
2386
protected override
IGroupedAnalyzerActions
CreateGroupedActions(DiagnosticAnalyzer analyzer, in AnalyzerActions analyzerActions)
2396
IGroupedAnalyzerActions
additionalPerSymbolActions,
DiagnosticAnalyzer\AnalyzerDriver.GroupedAnalyzerActions.cs (3)
64
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);