7 instantiations of BoundTryStatement
Microsoft.CodeAnalysis.CSharp (7)
Compiler\MethodBodySynthesizer.cs (1)
567new BoundTryStatement(
Generated\BoundNodes.xml.Generated.cs (1)
4250var result = new BoundTryStatement(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
64new BoundTryStatement(
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
258BoundStatement tryFinally = new BoundTryStatement(
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
419BoundStatement tryFinally = new BoundTryStatement(
Lowering\SyntheticBoundNodeFactory.cs (2)
1581return new BoundTryStatement(Syntax, tryBlock, catchBlocks, finallyBlock, finallyLabel) { WasCompilerGenerated = true }; 1607return new BoundTryStatement(Syntax, tryBlock, ImmutableArray<BoundCatchBlock>.Empty, faultBlock, finallyLabelOpt: null, preferFaultHandler: true);
47 references to BoundTryStatement
Microsoft.CodeAnalysis.CSharp (47)
Binder\Binder_Statements.cs (1)
3200private BoundTryStatement BindTryStatement(TryStatementSyntax node, BindingDiagnosticBag diagnostics)
BoundTree\BoundNode_Source.cs (1)
28case BoundTryStatement tryStatement:
BoundTree\BoundTreeVisitors.cs (1)
96return VisitTryStatement(node as BoundTryStatement, arg);
CodeGen\EmitStatement.cs (3)
88EmitTryStatement((BoundTryStatement)statement); 922private void EmitTryStatement(BoundTryStatement statement, bool emitCatchesOnly = false) 1941public static BoundBlock MakeFinallyClone(BoundTryStatement node)
CodeGen\Optimizer.cs (1)
1668public override BoundNode VisitTryStatement(BoundTryStatement node)
FlowAnalysis\AbstractFlowPass.cs (3)
1816public override BoundNode VisitTryStatement(BoundTryStatement node) 1908private void VisitTryBlockWithAnyTransferFunction(BoundStatement tryBlock, BoundTryStatement node, ref TLocalState tryState) 1932protected virtual void VisitTryBlock(BoundStatement tryBlock, BoundTryStatement node, ref TLocalState tryState)
FlowAnalysis\ControlFlowPass.cs (1)
274protected override void VisitTryBlock(BoundStatement tryBlock, BoundTryStatement node, ref LocalState tryState)
Generated\BoundNodes.xml.Generated.cs (8)
4246public BoundTryStatement Update(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler) 4250var result = new BoundTryStatement(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors); 9052return VisitTryStatement((BoundTryStatement)node, arg); 9414public virtual R VisitTryStatement(BoundTryStatement node, A arg) => this.DefaultVisit(node, arg); 9650public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node); 10213public override BoundNode? VisitTryStatement(BoundTryStatement node) 11426public override BoundNode? VisitTryStatement(BoundTryStatement node) 15921public override TreeDumperNode VisitTryStatement(BoundTryStatement node, object? arg) => new TreeDumperNode("tryStatement", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (11)
135public override BoundNode VisitTryStatement(BoundTryStatement node) 150BoundNode visitTryStatement(BoundTryStatement node, SyntaxNode tryStatementSyntax) 166var asTry = finalizedRegion as BoundTryStatement; 461private BoundStatement RewriteFinalizedRegion(BoundTryStatement node) 737private AwaitFinallyFrame PushFrame(BoundTryStatement statement) 759private Dictionary<BoundTryStatement, HashSet<LabelSymbol>> _labelsInInterestingTry; 775public bool FinallyContainsAwaits(BoundTryStatement statement) 800internal HashSet<LabelSymbol> Labels(BoundTryStatement statement) 805public override BoundNode VisitTryStatement(BoundTryStatement node) 822_labelsInInterestingTry = labelsInInterestingTry = new Dictionary<BoundTryStatement, HashSet<LabelSymbol>>();
Lowering\AsyncRewriter\AsyncIteratorMethodToStateMachineRewriter.cs (2)
364/// In those cases, we saved the finally-entry label in <see cref="BoundTryStatement.FinallyLabelOpt"/>. 366public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (4)
364public override BoundNode VisitTryStatement(BoundTryStatement node) 370var result = node.Update( 462private IteratorFinallyFrame PushFrame(BoundTryStatement statement) 487private bool ContainsYields(BoundTryStatement statement)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.YieldsInTryAnalysis.cs (5)
23private Dictionary<BoundTryStatement, HashSet<LabelSymbol>> _labelsInYieldingTrys; 37public bool ContainsYields(BoundTryStatement statement) 54internal HashSet<LabelSymbol> Labels(BoundTryStatement statement) 59public override BoundNode VisitTryStatement(BoundTryStatement node) 77_labelsInYieldingTrys = yieldingTryLabels = new Dictionary<BoundTryStatement, HashSet<LabelSymbol>>();
Lowering\LocalRewriter\LocalRewriter_TryStatement.cs (1)
14public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
316public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
876public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\SyntheticBoundNodeFactory.cs (1)
1605internal BoundTryStatement Fault(BoundBlock tryBlock, BoundBlock faultBlock)
Operations\CSharpOperationFactory.cs (2)
185return CreateBoundTryStatementOperation((BoundTryStatement)boundNode); 1995private ITryOperation CreateBoundTryStatementOperation(BoundTryStatement boundTryStatement)