1 write to Blocks
Microsoft.CodeAnalysis (1)
Operations\ControlFlowGraph.cs (1)
64Blocks = blocks;
161 references to Blocks
GenerateDocumentationAndConfigFiles (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
ILLink.RoslynAnalyzer (6)
DataFlow\ControlFlowGraphExtensions.cs (3)
17var firstBlock = cfg.Blocks[0]; 24var lastBlock = cfg.Blocks.Last(); 30=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
DataFlow\ControlFlowGraphProxy.cs (3)
54foreach (var block in ControlFlowGraph.Blocks) 248new BlockProxy(ControlFlowGraph.Blocks[region.Region.FirstBlockOrdinal]); 251new BlockProxy(ControlFlowGraph.Blocks[region.Region.LastBlockOrdinal]);
Metrics (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Metrics.Legacy (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis (3)
Operations\BasicBlock.cs (1)
120/// which can be used to index into <see cref="ControlFlowGraph.Blocks"/> array.
Operations\BasicBlockKind.cs (2)
14/// which is always the first block in <see cref="ControlFlowGraph.Blocks"/>. 20/// which is always the last block in <see cref="ControlFlowGraph.Blocks"/>.
Microsoft.CodeAnalysis.Analyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.AnalyzerUtilities (29)
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\BasicBlockExtensions.cs (2)
24yield return (predecessorBlock: cfg.Blocks[lastFinally.LastBlockOrdinal], branchWithInfo); 204var sourceBlock = cfg.Blocks[ordinal];
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\ControlFlowGraphExtensions.cs (2)
15public static BasicBlock GetEntry(this ControlFlowGraph cfg) => cfg.Blocks.Single(b => b.Kind == BasicBlockKind.Entry); 16public static BasicBlock GetExit(this ControlFlowGraph cfg) => cfg.Blocks.Single(b => b.Kind == BasicBlockKind.Exit);
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\ControlFlowRegionExtensions.cs (1)
19var block = cfg.Blocks[i];
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\IOperationExtensions_FlowAnalysis.cs (1)
21foreach (var block in cfg.Blocks)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\ParameterValidationAnalysis\ParameterValidationAnalysis.cs (1)
115foreach (var block in analysisContext.ControlFlowGraph.Blocks)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowAnalysis.cs (13)
71using var pendingBlocksNeedingAtLeastOnePass = PooledSortedSet<int>.GetInstance(cfg.Blocks.Select(b => b.Ordinal)); 101foreach (var block in cfg.Blocks) 136foreach (var block in cfg.Blocks) 199foreach (var block in cfg.Blocks) 224var block = cfg.Blocks[blockOrdinal]; 239cfg.Blocks[p].GetInnermostRegionStartedByBlock(ControlFlowRegionKind.Catch) != null); 515var catchBlock = cfg.Blocks[catchRegion.FirstBlockOrdinal]; 574var block = cfg.Blocks[blockOrdinal]; 656var destination = cfg.Blocks[firstFinally.FirstBlockOrdinal]; 677successor = new BranchWithInfo(destination: cfg.Blocks[finallyRegion.FirstBlockOrdinal]); 703var successor = new BranchWithInfo(destination: cfg.Blocks[catchRegion.FirstBlockOrdinal]); 805for (int i = cfg.Blocks.Length - 1; i > 0; i--) 807var block = cfg.Blocks[i];
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.BannedApiAnalyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.CodeStyle (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (2)
IOperation\IOperationTests_IAnonymousFunctionExpression.cs (2)
877return graph.Blocks.SelectMany(b => b.Operations.SelectMany(o => o.DescendantsAndSelf())).OfType<IFlowAnonymousFunctionOperation>().Single(); 933return graph.Blocks.SelectMany(b => b.Operations.SelectMany(o => o.DescendantsAndSelf())).OfType<IFlowAnonymousFunctionOperation>().ElementAt(index);
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.PublicApiAnalyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.ResxSourceGenerator (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Microsoft.CodeAnalysis.Test.Utilities (4)
Compilation\ControlFlowGraphVerifier.cs (3)
92for (int i = 0; i < graph.Blocks.Length; i++) 94Assert.Equal(graph.Blocks[i].IsReachable, reachabilityVector[i]); 111ImmutableArray<BasicBlock> blocks = graph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
Microsoft.CodeAnalysis.Workspaces (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Roslyn.Diagnostics.Analyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Test.Utilities (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];
Text.Analyzers (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (3)
15var firstBlock = cfg.Blocks[0]; 22var lastBlock = cfg.Blocks.Last(); 28=> cfg.Blocks.SelectMany(b => b.DescendantOperations());
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\OperationExtensions.cs (1)
310foreach (var block in cfg.Blocks)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
32var blocks = controlFlowGraph.Blocks;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (4)
168foreach (var block in cfg.Blocks) 248foreach (var operation in cfg.Blocks[i].DescendantOperations()) 305lastBlockOrdinal: lambdaOrLocalFunctionCfg.Blocks.Length - 1, operationsBuilder, cancellationToken); 397var firstBasicBlockInOutermostRegion = ControlFlowGraph.Blocks[containingTryCatchFinallyRegion.FirstBlockOrdinal];