7 instantiations of BoundTryStatement
Microsoft.CodeAnalysis.CSharp (7)
Compiler\MethodBodySynthesizer.cs (1)
567new BoundTryStatement(
Generated\BoundNodes.xml.Generated.cs (1)
4252var 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)
1617return new BoundTryStatement(Syntax, tryBlock, catchBlocks, finallyBlock, finallyLabel) { WasCompilerGenerated = true }; 1643return 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)
3216private 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) 1948public static BoundBlock MakeFinallyClone(BoundTryStatement node)
CodeGen\Optimizer.cs (1)
1667public override BoundNode VisitTryStatement(BoundTryStatement node)
FlowAnalysis\AbstractFlowPass.cs (3)
1822public override BoundNode VisitTryStatement(BoundTryStatement node) 1914private void VisitTryBlockWithAnyTransferFunction(BoundStatement tryBlock, BoundTryStatement node, ref TLocalState tryState) 1938protected 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)
4248public BoundTryStatement Update(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler) 4252var result = new BoundTryStatement(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors); 9090return VisitTryStatement((BoundTryStatement)node, arg); 9452public virtual R VisitTryStatement(BoundTryStatement node, A arg) => this.DefaultVisit(node, arg); 9688public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node); 10251public override BoundNode? VisitTryStatement(BoundTryStatement node) 11537public override BoundNode? VisitTryStatement(BoundTryStatement node) 16107public 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)
371public override BoundNode VisitTryStatement(BoundTryStatement node) 377var result = node.Update( 469private IteratorFinallyFrame PushFrame(BoundTryStatement statement) 494private 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)
318public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
883public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\SyntheticBoundNodeFactory.cs (1)
1641internal BoundTryStatement Fault(BoundBlock tryBlock, BoundBlock faultBlock)
Operations\CSharpOperationFactory.cs (2)
185return CreateBoundTryStatementOperation((BoundTryStatement)boundNode); 1995private ITryOperation CreateBoundTryStatementOperation(BoundTryStatement boundTryStatement)