21 instantiations of PendingBranch
Microsoft.CodeAnalysis.CSharp (21)
FlowAnalysis\AbstractFlowPass.cs (12)
2019PendingBranches.Add(new PendingBranch(node, this.State, label: null)); 2327PendingBranches.Add(new PendingBranch(node, this.State, null)); 2798PendingBranches.Add(new PendingBranch(node, this.State, null)); 2884PendingBranches.Add(new PendingBranch(node, this.State, null)); 3225PendingBranches.Add(new PendingBranch(node, this.State, node.Label)); 3233PendingBranches.Add(new PendingBranch(node, this.State, node.Label)); 3336PendingBranches.Add(new PendingBranch(node, this.State, node.Label)); 3402PendingBranches.Add(new PendingBranch(node, this.State, null)); 3433PendingBranches.Add(new PendingBranch(node, this.State, null)); 3441PendingBranches.Add(new PendingBranch(node, this.State, null)); 3550PendingBranches.Add(new PendingBranch(node, this.StateWhenTrue, node.Label)); 3555PendingBranches.Add(new PendingBranch(node, this.StateWhenFalse, node.Label));
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (1)
106PendingBranches.Add(new PendingBranch(null, this.State, null));
FlowAnalysis\AbstractFlowPass_Switch.cs (3)
69PendingBranches.Add(new PendingBranch(label, this.State, label.Label)); 135PendingBranches.Add(new PendingBranch(node, state, node.DefaultLabel)); 138PendingBranches.Add(new PendingBranch(node, state, label));
FlowAnalysis\NullableWalker.cs (4)
2947PendingBranches.Add(new PendingBranch(node, this.State, label: null)); 2994PendingBranches.Add(new PendingBranch(node, joinedState, label: null, this.IsConditionalState, this.StateWhenTrue, this.StateWhenFalse)); 2998PendingBranches.Add(new PendingBranch(node, this.State, label: null)); 3343PendingBranches.Add(new PendingBranch(null, this.State, null));
FlowAnalysis\NullableWalker_Patterns.cs (1)
307PendingBranches.Add(new PendingBranch(label, this.State, label.Label));
55 references to PendingBranch
Microsoft.CodeAnalysis.CSharp (55)
FlowAnalysis\AbstractFlowPass.cs (9)
421protected virtual ImmutableArray<PendingBranch> Scan(ref bool badRegion) 432ImmutableArray<PendingBranch> result = RemoveReturns(); 436protected ImmutableArray<PendingBranch> Analyze(ref bool badRegion, Optional<TLocalState> initialState = default) 438ImmutableArray<PendingBranch> returns; 531protected virtual ImmutableArray<PendingBranch> RemoveReturns() 533ImmutableArray<PendingBranch> result; 762protected virtual void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement target) 792protected virtual void ResolveBranch(PendingBranch pending, LabelSymbol label, BoundStatement? target, ref bool labelStateChanged) 1857foreach (var pend in tryAndCatchPending.PendingBranches.AsEnumerable())
FlowAnalysis\AbstractFlowPass.PendingBranchesCollection.cs (13)
16private ArrayBuilder<PendingBranch> _unlabeledBranches; 17private PooledDictionary<LabelSymbol, ArrayBuilder<PendingBranch>>? _labeledBranches; 21_unlabeledBranches = ArrayBuilder<PendingBranch>.GetInstance(); 53internal ImmutableArray<PendingBranch> ToImmutable() 60internal ArrayBuilder<PendingBranch>? GetAndRemoveBranches(LabelSymbol? label) 62ArrayBuilder<PendingBranch>? result; 72_unlabeledBranches = ArrayBuilder<PendingBranch>.GetInstance(); 86internal void Add(PendingBranch branch) 113private ArrayBuilder<PendingBranch> GetOrAddLabeledBranches(LabelSymbol label) 117_labeledBranches = PooledDictionary<LabelSymbol, ArrayBuilder<PendingBranch>>.GetInstance(); 121branches = ArrayBuilder<PendingBranch>.GetInstance(); 130internal IEnumerable<PendingBranch> AsEnumerable() 136IEnumerable<PendingBranch> asEnumerableCore()
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (2)
111ImmutableArray<PendingBranch> pendingReturns = RemoveReturns(); 120foreach (PendingBranch pending in pendingReturns)
FlowAnalysis\AbstractRegionControlFlowPass.cs (2)
39ImmutableArray<PendingBranch> pendingReturns = RemoveReturns(); 42foreach (PendingBranch returnBranch in pendingReturns)
FlowAnalysis\AbstractRegionDataFlowPass.cs (1)
32protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion)
FlowAnalysis\AlwaysAssignedWalker.cs (2)
81protected override void ResolveBranch(PendingBranch pending, LabelSymbol label, BoundStatement target, ref bool labelStateChanged) 134foreach (var branch in PendingBranches.AsEnumerable())
FlowAnalysis\ControlFlowPass.cs (5)
133protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion) 193ImmutableArray<PendingBranch> returns = Analyze(ref badRegion); 204protected override ImmutableArray<PendingBranch> RemoveReturns() 207foreach (var pending in result) 300foreach (var branch in PendingBranches.AsEnumerable())
FlowAnalysis\DataFlowsInWalker.cs (1)
80PendingBranch pending,
FlowAnalysis\DataFlowsOutWalker.cs (1)
67protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion)
FlowAnalysis\DefiniteAssignment.cs (8)
329protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion) 371ImmutableArray<PendingBranch> pendingReturns = base.Scan(ref badRegion); 383foreach (PendingBranch returnBranch in pendingReturns) 397protected override ImmutableArray<PendingBranch> RemoveReturns() 419private static bool HasAwait(PendingBranch pending) 682ImmutableArray<PendingBranch> returns = Analyze(ref badRegion); 2441ImmutableArray<PendingBranch> pendingReturns = RemoveReturns(); 2446foreach (PendingBranch pending in pendingReturns)
FlowAnalysis\EntryPointsWalker.cs (1)
58protected override void NoteBranch(PendingBranch pending, BoundNode gotoStmt, BoundStatement targetStmt)
FlowAnalysis\ExitPointsWalker.cs (1)
122foreach (var pending in PendingBranches.AsEnumerable())
FlowAnalysis\NullableWalker.cs (8)
579protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion) 601ImmutableArray<PendingBranch> pendingReturns = base.Scan(ref badRegion); 608foreach (var pendingReturn in pendingReturns) 1060private void EnforceMemberNotNullWhenForPendingReturn(PendingBranch pendingReturn, BoundReturnStatement returnStatement) 1214private void EnforceNotNullWhenForPendingReturn(PendingBranch pendingReturn, BoundReturnStatement returnStatement) 1849ImmutableArray<PendingBranch> returns = walker.Analyze(ref badRegion, initialState); 3356ImmutableArray<PendingBranch> pendingReturns = RemoveReturns(); 3357foreach (var pendingReturn in pendingReturns)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
201protected override ImmutableArray<PendingBranch> Scan(ref bool badRegion)