public bool ShouldExecuteBlockActions <T0, T1>(ImmutableDictionary <DiagnosticAnalyzer, ImmutableArray <T0> > blockStartActions, ImmutableDictionary <DiagnosticAnalyzer, ImmutableArray <T1> > blockActions, AnalysisScope analysisScope, ISymbol symbol) { if ((!blockStartActions.IsEmpty || !blockActions.IsEmpty) && AnalyzerExecutor.CanHaveExecutableCodeBlock(symbol)) { foreach (var analyzer in analysisScope.Analyzers) { if (blockStartActions.ContainsKey(analyzer) || blockActions.ContainsKey(analyzer)) { return(true); } } } return(false); }