7 instantiations of BoundTryStatement
Microsoft.CodeAnalysis.CSharp (7)
Compiler\MethodBodySynthesizer.cs (1)
567
new
BoundTryStatement
(
Generated\BoundNodes.xml.Generated.cs (1)
4249
var result = new
BoundTryStatement
(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (1)
64
new
BoundTryStatement
(
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
258
BoundStatement tryFinally = new
BoundTryStatement
(
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
419
BoundStatement tryFinally = new
BoundTryStatement
(
Lowering\SyntheticBoundNodeFactory.cs (2)
1599
return new
BoundTryStatement
(Syntax, tryBlock, catchBlocks, finallyBlock, finallyLabel) { WasCompilerGenerated = true };
1625
return 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)
3237
private
BoundTryStatement
BindTryStatement(TryStatementSyntax node, BindingDiagnosticBag diagnostics)
BoundTree\BoundNode_Source.cs (1)
28
case
BoundTryStatement
tryStatement:
BoundTree\BoundTreeVisitors.cs (1)
96
return VisitTryStatement(node as
BoundTryStatement
, arg);
CodeGen\EmitStatement.cs (3)
88
EmitTryStatement((
BoundTryStatement
)statement);
922
private void EmitTryStatement(
BoundTryStatement
statement, bool emitCatchesOnly = false)
1948
public static BoundBlock MakeFinallyClone(
BoundTryStatement
node)
CodeGen\Optimizer.cs (1)
1677
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
FlowAnalysis\AbstractFlowPass.cs (3)
1823
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
1915
private void VisitTryBlockWithAnyTransferFunction(BoundStatement tryBlock,
BoundTryStatement
node, ref TLocalState tryState)
1939
protected virtual void VisitTryBlock(BoundStatement tryBlock,
BoundTryStatement
node, ref TLocalState tryState)
FlowAnalysis\ControlFlowPass.cs (1)
273
protected override void VisitTryBlock(BoundStatement tryBlock,
BoundTryStatement
node, ref LocalState tryState)
Generated\BoundNodes.xml.Generated.cs (8)
4245
public
BoundTryStatement
Update(BoundBlock tryBlock, ImmutableArray<BoundCatchBlock> catchBlocks, BoundBlock? finallyBlockOpt, LabelSymbol? finallyLabelOpt, bool preferFaultHandler)
4249
var
result = new BoundTryStatement(this.Syntax, tryBlock, catchBlocks, finallyBlockOpt, finallyLabelOpt, preferFaultHandler, this.HasErrors);
9087
return VisitTryStatement((
BoundTryStatement
)node, arg);
9449
public virtual R VisitTryStatement(
BoundTryStatement
node, A arg) => this.DefaultVisit(node, arg);
9685
public virtual BoundNode? VisitTryStatement(
BoundTryStatement
node) => this.DefaultVisit(node);
10250
public override BoundNode? VisitTryStatement(
BoundTryStatement
node)
11539
public override BoundNode? VisitTryStatement(
BoundTryStatement
node)
16098
public override TreeDumperNode VisitTryStatement(
BoundTryStatement
node, object? arg) => new TreeDumperNode("tryStatement", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (11)
172
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
187
BoundNode visitTryStatement(
BoundTryStatement
node, SyntaxNode tryStatementSyntax)
203
var
asTry = finalizedRegion as
BoundTryStatement
;
514
private BoundStatement RewriteFinalizedRegion(
BoundTryStatement
node)
811
private AwaitFinallyFrame PushFrame(
BoundTryStatement
statement)
833
private Dictionary<
BoundTryStatement
, HashSet<LabelSymbol>> _labelsInInterestingTry;
849
public bool FinallyContainsAwaits(
BoundTryStatement
statement)
874
internal HashSet<LabelSymbol> Labels(
BoundTryStatement
statement)
879
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
896
_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"/>.
366
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (4)
371
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
377
var
result = node.Update(
469
private IteratorFinallyFrame PushFrame(
BoundTryStatement
statement)
494
private bool ContainsYields(
BoundTryStatement
statement)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.YieldsInTryAnalysis.cs (5)
23
private Dictionary<
BoundTryStatement
, HashSet<LabelSymbol>> _labelsInYieldingTrys;
37
public bool ContainsYields(
BoundTryStatement
statement)
54
internal HashSet<LabelSymbol> Labels(
BoundTryStatement
statement)
59
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
77
_labelsInYieldingTrys = yieldingTryLabels = new Dictionary<
BoundTryStatement
, HashSet<LabelSymbol>>();
Lowering\LocalRewriter\LocalRewriter_TryStatement.cs (1)
14
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
Lowering\StateMachineRewriter\IteratorAndAsyncCaptureWalker.cs (1)
337
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
883
public override BoundNode VisitTryStatement(
BoundTryStatement
node)
Lowering\SyntheticBoundNodeFactory.cs (1)
1623
internal
BoundTryStatement
Fault(BoundBlock tryBlock, BoundBlock faultBlock)
Operations\CSharpOperationFactory.cs (2)
185
return CreateBoundTryStatementOperation((
BoundTryStatement
)boundNode);
1995
private ITryOperation CreateBoundTryStatementOperation(
BoundTryStatement
boundTryStatement)