11 instantiations of BoundConditionalGoto
Microsoft.CodeAnalysis.CSharp (11)
Compiler\MethodBodySynthesizer.cs (1)
509BoundStatement loopEnd = new BoundConditionalGoto(syntax,
Generated\BoundNodes.xml.Generated.cs (1)
4872var result = new BoundConditionalGoto(this.Syntax, condition, jumpIfTrue, label, this.HasErrors);
Lowering\LocalRewriter\LocalRewriter_DoStatement.cs (1)
33BoundStatement ifConditionGotoStart = new BoundConditionalGoto(syntax, rewrittenCondition, true, startLabel);
Lowering\LocalRewriter\LocalRewriter_ForStatement.cs (2)
137branchBack = new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, true, startLabel); 241BoundStatement ifNotConditionGotoBreak = new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, false, node.BreakLabel);
Lowering\LocalRewriter\LocalRewriter_IfStatement.cs (3)
56builder.Add(new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, false, afterif)); 78builder.Add(new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, false, alt)); 137builder.Add(new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, false, afterif));
Lowering\LocalRewriter\LocalRewriter_WhileStatement.cs (2)
67BoundStatement ifConditionGotoStart = new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, true, startLabel); 138BoundStatement ifNotConditionGotoBreak = new BoundConditionalGoto(rewrittenCondition.Syntax, rewrittenCondition, false, breakLabel);
Lowering\SyntheticBoundNodeFactory.cs (1)
957return new BoundConditionalGoto(Syntax, condition, jumpIfTrue, label) { WasCompilerGenerated = true };
22 references to BoundConditionalGoto
Microsoft.CodeAnalysis.CSharp (22)
BoundTree\BoundNode_Source.cs (1)
167case BoundConditionalGoto gotoStatement:
BoundTree\BoundTreeVisitors.cs (1)
114return VisitConditionalGoto(node as BoundConditionalGoto, arg);
CodeGen\EmitStatement.cs (3)
80EmitConditionalGoto((BoundConditionalGoto)statement); 189private void EmitConditionalGoto(BoundConditionalGoto boundConditionalGoto) 1971public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
CodeGen\Optimizer.cs (1)
1408public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
FlowAnalysis\AbstractFlowPass.cs (1)
3555public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Generated\BoundNodes.xml.Generated.cs (8)
4868public BoundConditionalGoto Update(BoundExpression condition, bool jumpIfTrue, LabelSymbol label) 4872var result = new BoundConditionalGoto(this.Syntax, condition, jumpIfTrue, label, this.HasErrors); 9124return VisitConditionalGoto((BoundConditionalGoto)node, arg); 9469public virtual R VisitConditionalGoto(BoundConditionalGoto node, A arg) => this.DefaultVisit(node, arg); 9705public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node); 10298public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 11639public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 16245public override TreeDumperNode VisitConditionalGoto(BoundConditionalGoto node, object? arg) => new TreeDumperNode("conditionalGoto", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (1)
368public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Lowering\ClosureConversion\ClosureConversion.Analysis.Tree.cs (2)
279/// and <see cref="BoundConditionalGoto"/>s that jump from a point 536public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (1)
365public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Lowering\LocalRewriter\LocalRewriter_IfStatement.cs (1)
100Debug.Assert(builder[conditionalGotoIndex] is BoundConditionalGoto);
Lowering\SpillSequenceSpiller.cs (1)
686public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Lowering\UnmatchedGotoFinder.cs (1)
72public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)