11 instantiations of BoundConditionalGoto
Microsoft.CodeAnalysis.CSharp (11)
Compiler\MethodBodySynthesizer.cs (1)
509BoundStatement loopEnd = new BoundConditionalGoto(syntax,
Generated\BoundNodes.xml.Generated.cs (1)
4867var 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)
939return 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) 1998public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
CodeGen\Optimizer.cs (1)
1418public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
FlowAnalysis\AbstractFlowPass.cs (1)
3577public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Generated\BoundNodes.xml.Generated.cs (8)
4863public BoundConditionalGoto Update(BoundExpression condition, bool jumpIfTrue, LabelSymbol label) 4867var result = new BoundConditionalGoto(this.Syntax, condition, jumpIfTrue, label, this.HasErrors); 9123return VisitConditionalGoto((BoundConditionalGoto)node, arg); 9468public virtual R VisitConditionalGoto(BoundConditionalGoto node, A arg) => this.DefaultVisit(node, arg); 9704public virtual BoundNode? VisitConditionalGoto(BoundConditionalGoto node) => this.DefaultVisit(node); 10298public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 11641public override BoundNode? VisitConditionalGoto(BoundConditionalGoto node) 16234public override TreeDumperNode VisitConditionalGoto(BoundConditionalGoto node, object? arg) => new TreeDumperNode("conditionalGoto", null, new TreeDumperNode[]
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (1)
406public 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)
687public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)
Lowering\UnmatchedGotoFinder.cs (1)
72public override BoundNode VisitConditionalGoto(BoundConditionalGoto node)