2 instantiations of BoundTestDecisionDagNode
Microsoft.CodeAnalysis.CSharp (2)
Binder\DecisionDagBuilder.cs (1)
1057state.Dag = uniqifyDagNode(new BoundTestDecisionDagNode(d.Syntax, d, whenTrue, whenFalse));
Generated\BoundNodes.xml.Generated.cs (1)
5102var result = new BoundTestDecisionDagNode(this.Syntax, test, whenTrue, whenFalse, this.HasErrors);
42 references to BoundTestDecisionDagNode
Microsoft.CodeAnalysis.CSharp (42)
Binder\DecisionDagBuilder.cs (2)
26/// kind of nodes: <see cref="BoundTestDecisionDagNode"/> performs one of the binary tests; 789case BoundTestDecisionDagNode { Test: var test }:
Binder\PatternExplainer.cs (6)
57BoundTestDecisionDagNode { Test: BoundDagNonNullTest } t when !nullPaths => (1 + distance(t.WhenTrue), t.WhenTrue), 58BoundTestDecisionDagNode { Test: BoundDagExplicitNullTest } t when !nullPaths => (1 + distance(t.WhenFalse), t.WhenFalse), 59BoundTestDecisionDagNode t when distance(t.WhenTrue) is var trueDist1 && distance(t.WhenFalse) is var falseDist1 => 82case BoundTestDecisionDagNode t: 135case BoundTestDecisionDagNode test: 255case BoundTestDecisionDagNode t:
Binder\SwitchExpressionBinder.cs (1)
115case BoundTestDecisionDagNode p:
BoundTree\BoundDecisionDag.cs (3)
31case BoundTestDecisionDagNode p: 128case BoundTestDecisionDagNode p: 158if (dag is BoundTestDecisionDagNode p)
BoundTree\BoundDecisionDagNode.cs (4)
27case (BoundTestDecisionDagNode n1, BoundTestDecisionDagNode n2): 44case BoundTestDecisionDagNode n: 79case BoundTestDecisionDagNode node:
FlowAnalysis\NullableWalker_Patterns.cs (1)
588case BoundTestDecisionDagNode p:
Generated\BoundNodes.xml.Generated.cs (8)
5098public BoundTestDecisionDagNode Update(BoundDagTest test, BoundDecisionDagNode whenTrue, BoundDecisionDagNode whenFalse) 5102var result = new BoundTestDecisionDagNode(this.Syntax, test, whenTrue, whenFalse, this.HasErrors); 9134return VisitTestDecisionDagNode((BoundTestDecisionDagNode)node, arg); 9473public virtual R VisitTestDecisionDagNode(BoundTestDecisionDagNode node, A arg) => this.DefaultVisit(node, arg); 9709public virtual BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) => this.DefaultVisit(node); 10331public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) 11591public override BoundNode? VisitTestDecisionDagNode(BoundTestDecisionDagNode node) 16152public override TreeDumperNode VisitTestDecisionDagNode(BoundTestDecisionDagNode node, object? arg) => new TreeDumperNode("testDecisionDagNode", null, new TreeDumperNode[]
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (13)
84case BoundTestDecisionDagNode p: 445if (node is BoundTestDecisionDagNode testNode && 504var input = ((BoundTestDecisionDagNode)node).Test.Input; 514case BoundTestDecisionDagNode { WhenFalse: BoundTestDecisionDagNode test2 } test1: 516case BoundTestDecisionDagNode { WhenTrue: BoundTestDecisionDagNode test2 } test1: 523bool canDispatch(BoundTestDecisionDagNode test1, BoundTestDecisionDagNode test2) 570if (!(node is BoundTestDecisionDagNode testNode && testNode.Test.Input.Equals(input))) 591BoundTestDecisionDagNode previous = testNode; 592while (previous.WhenFalse is BoundTestDecisionDagNode p && 1224case BoundTestDecisionDagNode testNode:
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (2)
584case BoundTestDecisionDagNode t: 676case BoundTestDecisionDagNode testNode:
Lowering\LocalRewriter\LocalRewriter_IsPatternOperator.cs (2)
74case BoundTestDecisionDagNode t: 254case BoundTestDecisionDagNode testNode: