5 instantiations of BoundCatchBlock
Microsoft.CodeAnalysis.CSharp (5)
Binder\Binder_Statements.cs (1)
3393return new BoundCatchBlock(node, locals, exceptionSource, type, exceptionFilterPrologueOpt: null, boundFilter, block, hasError);
Generated\BoundNodes.xml.Generated.cs (1)
4296var result = new BoundCatchBlock(this.Syntax, locals, exceptionSourceOpt, exceptionTypeOpt, exceptionFilterPrologueOpt, exceptionFilterOpt, body, isSynthesizedAsyncCatchAll, this.HasErrors);
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (1)
238return new BoundCatchBlock(
Lowering\SyntheticBoundNodeFactory.cs (2)
1613return new BoundCatchBlock(Syntax, ImmutableArray.Create(local), source, source.Type, exceptionFilterPrologueOpt: null, exceptionFilterOpt: null, body: block, isSynthesizedAsyncCatchAll: false); 1620return new BoundCatchBlock(Syntax, ImmutableArray<LocalSymbol>.Empty, source, source.Type, exceptionFilterPrologueOpt: null, exceptionFilterOpt: null, body: block, isSynthesizedAsyncCatchAll: false);
79 references to BoundCatchBlock
Microsoft.CodeAnalysis.CSharp (79)
Binder\Binder_Statements.cs (7)
3255private ImmutableArray<BoundCatchBlock> BindCatchBlocks(SyntaxList<CatchClauseSyntax> catchClauses, BindingDiagnosticBag diagnostics) 3260return ImmutableArray<BoundCatchBlock>.Empty; 3263var catchBlocks = ArrayBuilder<BoundCatchBlock>.GetInstance(n); 3274var catchBlock = catchBinder.BindCatchBlock(catchSyntax, catchBlocks, diagnostics); 3282private BoundCatchBlock BindCatchBlock(CatchClauseSyntax node, ArrayBuilder<BoundCatchBlock> previousBlocks, BindingDiagnosticBag diagnostics) 3332foreach (var previousBlock in previousBlocks)
Binder\RefSafetyAnalysis.cs (1)
482public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
BoundTree\BoundNode.cs (1)
686public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
BoundTree\BoundNode_Source.cs (1)
37foreach (var catchBlock in catchBlocks)
BoundTree\Constructors.cs (1)
623public BoundTryStatement(SyntaxNode syntax, BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt = null)
CodeGen\EmitStatement.cs (3)
978foreach (var catchBlock in statement.CatchBlocks) 1056private void EmitCatchBlock(BoundCatchBlock catchBlock) 1247private void RecordAsyncCatchHandlerOffset(BoundCatchBlock catchBlock)
CodeGen\Optimizer.cs (2)
1694public override BoundNode VisitCatchBlock(BoundCatchBlock node) 2298public override BoundNode VisitCatchBlock(BoundCatchBlock node)
Compiler\MethodBodySynthesizer.cs (1)
570ImmutableArray<BoundCatchBlock>.Empty,
FlowAnalysis\AbstractFlowPass.cs (3)
1834foreach (var catchBlock in node.CatchBlocks) 1944private void VisitCatchBlockWithAnyTransferFunction(BoundCatchBlock catchBlock, ref TLocalState finallyState) 1968public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
FlowAnalysis\ControlFlowPass.cs (1)
286public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
FlowAnalysis\DataFlowsOutWalker.cs (1)
161var local = ((BoundCatchBlock)node).Locals.FirstOrDefault();
FlowAnalysis\DefiniteAssignment.cs (1)
2635public override BoundNode VisitCatchBlock(BoundCatchBlock catchBlock)
FlowAnalysis\NullableWalker.cs (1)
12961public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
FlowAnalysis\VariablesDeclaredWalker.cs (1)
227public override BoundNode? VisitCatchBlock(BoundCatchBlock catchBlock)
Generated\BoundNodes.xml.Generated.cs (13)
4228public BoundTryStatement(SyntaxNode syntax, BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler, bool hasErrors = false) 4243public ImmutableArray<BoundCatchBlock> CatchBlocks { get; } 4251public BoundTryStatement Update(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler) 4292public BoundCatchBlock Update(ImmutableArray<LocalSymbol> locals, BoundExpression? exceptionSourceOpt, TypeSymbol? exceptionTypeOpt, BoundStatementList? exceptionFilterPrologueOpt, BoundExpression? exceptionFilterOpt, BoundBlock body, bool isSynthesizedAsyncCatchAll) 4296var result = new BoundCatchBlock(this.Syntax, locals, exceptionSourceOpt, exceptionTypeOpt, exceptionFilterPrologueOpt, exceptionFilterOpt, body, isSynthesizedAsyncCatchAll, this.HasErrors); 9099return VisitCatchBlock((BoundCatchBlock)node, arg); 9460public virtual R VisitCatchBlock(BoundCatchBlock node, A arg) => this.DefaultVisit(node, arg); 9696public virtual BoundNode? VisitCatchBlock(BoundCatchBlock node) => this.DefaultVisit(node); 10266public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 11551ImmutableArray<BoundCatchBlock> catchBlocks = this.VisitList(node.CatchBlocks); 11555public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 13643public override BoundNode? VisitCatchBlock(BoundCatchBlock node) 16105public override TreeDumperNode VisitCatchBlock(BoundCatchBlock node, object? arg) => new TreeDumperNode("catchBlock", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (10)
213return _F.Try((BoundBlock)finalizedRegion, ImmutableArray<BoundCatchBlock>.Empty, rewrittenFinally); 228var catchAll = _F.Catch(_F.Local(pendingExceptionLocal), _F.Block()); 530return (BoundCatchBlock)@this.VisitCatchBlock(catchBlock, parentAwaitCatchFrame: origAwaitCatchFrame); 581public override BoundNode VisitCatchBlock(BoundCatchBlock node) 586private BoundNode VisitCatchBlock(BoundCatchBlock node, AwaitCatchFrame parentAwaitCatchFrame) 631BoundCatchBlock catchAndPend; 835private HashSet<BoundCatchBlock> _awaitContainingCatches; 857internal bool CatchContainsAwait(BoundCatchBlock node) 921public override BoundNode VisitCatchBlock(BoundCatchBlock node) 933_awaitContainingCatches = awaitContainingCatches = new HashSet<BoundCatchBlock>();
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
218BoundCatchBlock generateExceptionHandling(LocalSymbol exceptionLocal, ImmutableArray<StateMachineFieldSymbol> rootHoistedLocals) 254protected virtual BoundStatement GenerateTopLevelTry(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks)
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (1)
425public override BoundNode VisitCatchBlock(BoundCatchBlock node)
Lowering\ClosureConversion\ClosureConversion.cs (2)
1217public override BoundNode VisitCatchBlock(BoundCatchBlock node) 1233private BoundNode RewriteCatch(BoundCatchBlock node, ArrayBuilder<BoundExpression> prologue, ArrayBuilder<LocalSymbol> newLocals)
Lowering\Instrumentation\CompoundInstrumenter.cs (1)
219BoundCatchBlock original,
Lowering\Instrumentation\DebugInfoInjector.cs (1)
455BoundCatchBlock original,
Lowering\Instrumentation\Instrumenter.cs (1)
294BoundCatchBlock original,
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
499BoundCatchBlock original,
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (1)
287ImmutableArray<BoundCatchBlock>.Empty,
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
67ImmutableArray<BoundCatchBlock>.Empty,
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
265catchBlocks: ImmutableArray<BoundCatchBlock>.Empty,
Lowering\LocalRewriter\LocalRewriter_LockStatement.cs (2)
179ImmutableArray<BoundCatchBlock>.Empty, 228ImmutableArray<BoundCatchBlock>.Empty,
Lowering\LocalRewriter\LocalRewriter_TryStatement.cs (3)
23ImmutableArray<BoundCatchBlock> catchBlocks = 25(optimizing && !HasSideEffects(tryBlock)) ? ImmutableArray<BoundCatchBlock>.Empty 78public override BoundNode? VisitCatchBlock(BoundCatchBlock node)
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
422catchBlocks: ImmutableArray<BoundCatchBlock>.Empty,
Lowering\SpillSequenceSpiller.cs (1)
709public override BoundNode VisitCatchBlock(BoundCatchBlock node)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
402public override BoundNode VisitCatchBlock(BoundCatchBlock node)
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
752ImmutableArray<BoundCatchBlock> catchBlocks = this.VisitList(node.CatchBlocks);
Lowering\SyntheticBoundNodeFactory.cs (7)
546statements.Add(Try(Block(statement), ImmutableArray<BoundCatchBlock>.Empty, Block(instrumentation.Epilogue))); 1595ImmutableArray<BoundCatchBlock> catchBlocks, 1602internal ImmutableArray<BoundCatchBlock> CatchBlocks( 1603params BoundCatchBlock[] catchBlocks) 1608internal BoundCatchBlock Catch( 1616internal BoundCatchBlock Catch( 1625return new BoundTryStatement(Syntax, tryBlock, ImmutableArray<BoundCatchBlock>.Empty, faultBlock, finallyLabelOpt: null, preferFaultHandler: true);
Operations\CSharpOperationFactory.cs (3)
187return CreateBoundCatchBlockOperation((BoundCatchBlock)boundNode); 1989ImmutableArray<ICatchClauseOperation> catches = CreateFromArray<BoundCatchBlock, ICatchClauseOperation>(boundTryStatement.CatchBlocks); 1996private ICatchClauseOperation CreateBoundCatchBlockOperation(BoundCatchBlock boundCatchBlock)