7 instantiations of BoundTryStatement
Microsoft.CodeAnalysis.CSharp (7)
Compiler\MethodBodySynthesizer.cs (1)
567new BoundTryStatement(
Generated\BoundNodes.xml.Generated.cs (1)
4249var 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)
420BoundStatement tryFinally = new BoundTryStatement(
Lowering\SyntheticBoundNodeFactory.cs (2)
1637return new BoundTryStatement(Syntax, tryBlock, catchBlocks, finallyBlock, finallyLabel) { WasCompilerGenerated = true }; 1663return 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)
3104private 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)
1726public override BoundNode VisitTryStatement(BoundTryStatement node) 1818private void VisitTryBlockWithAnyTransferFunction(BoundStatement tryBlock, BoundTryStatement node, ref TLocalState tryState) 1842protected 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)
4245public BoundTryStatement Update(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler) 4249var result = new BoundTryStatement(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors); 9049return VisitTryStatement((BoundTryStatement)node, arg); 9411public virtual R VisitTryStatement(BoundTryStatement node, A arg) => this.DefaultVisit(node, arg); 9647public virtual BoundNode? VisitTryStatement(BoundTryStatement node) => this.DefaultVisit(node); 10210public override BoundNode? VisitTryStatement(BoundTryStatement node) 11423public override BoundNode? VisitTryStatement(BoundTryStatement node) 15918public 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)
336/// In those cases, we saved the finally-entry label in <see cref="BoundTryStatement.FinallyLabelOpt"/>. 338public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (4)
357public override BoundNode VisitTryStatement(BoundTryStatement node) 363var result = node.Update( 455private IteratorFinallyFrame PushFrame(BoundTryStatement statement) 480private 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)
857public override BoundNode VisitTryStatement(BoundTryStatement node)
Lowering\SyntheticBoundNodeFactory.cs (1)
1661internal BoundTryStatement Fault(BoundBlock tryBlock, BoundBlock faultBlock)
Operations\CSharpOperationFactory.cs (2)
185return CreateBoundTryStatementOperation((BoundTryStatement)boundNode); 1966private ITryOperation CreateBoundTryStatementOperation(BoundTryStatement boundTryStatement)