3 instantiations of BoundDagNonNullTest
Microsoft.CodeAnalysis.CSharp (3)
Binder\DecisionDagBuilder.cs (2)
628tests.Add(new Tests.One(new BoundDagNonNullTest(syntax, isExplicitTest, input))); 1395state.SelectedTest = new BoundDagNonNullTest(t.Syntax, isExplicitTest: true, t.Input, t.HasErrors);
Generated\BoundNodes.xml.Generated.cs (1)
5338var result = new BoundDagNonNullTest(this.Syntax, isExplicitTest, input, this.HasErrors);
39 references to BoundDagNonNullTest
Microsoft.CodeAnalysis.CSharp (39)
Binder\DecisionDagBuilder.cs (13)
31/// four kinds:<see cref="BoundDagExplicitNullTest"/> tests a value for null; <see cref="BoundDagNonNullTest"/> 1392if (foundExplicitNullTest && d is BoundDagNonNullTest { IsExplicitTest: false } t) 1745case BoundDagNonNullTest nonNullTest: 1825resultForNonNullTest(BoundDagNonNullTest nonNullTest) 1951case BoundDagNonNullTest _: 1965case BoundDagNonNullTest n2: 1994case BoundDagNonNullTest n2: 2016case BoundDagNonNullTest n2: 2059case BoundDagNonNullTest n2: 2330return test is BoundDagNonNullTest && IsAnyUnionValue(NotTypeEvaluationInput(test.Input), out testUnionInstance); 2392if (test is not (BoundDagNonNullTest or BoundDagExplicitNullTest) && 2393other is not (BoundDagNonNullTest or BoundDagExplicitNullTest) && 3961case BoundDagNonNullTest:
Binder\PatternExplainer.cs (9)
57BoundTestDecisionDagNode { Test: BoundDagNonNullTest } t when !nullPaths => (1 + distance(t.WhenTrue), t.WhenTrue), 165bool skipWhenFalse = test.Test is BoundDagNonNullTest && !nullPaths; 366case (test: BoundDagNonNullTest _, sense: var sense): 392else if (constraints is [(BoundDagNonNullTest, true) or (BoundDagExplicitNullTest, false), (BoundDagTypeTest { Type: var constraintType2 }, var sense2)]) 413constraints[0] is (BoundDagNonNullTest _, true) && 562(BoundDagNonNullTest _, true) => true, 585(BoundDagNonNullTest _, sense: true) => true, 606case BoundDagNonNullTest: 775(test: BoundDagNonNullTest _, sense: true) or
Binder\SwitchExpressionBinder.cs (1)
129case BoundDagNonNullTest t: // checks that the input is not null
BoundTree\BoundDagTest.cs (4)
33case (BoundDagNonNullTest x, BoundDagNonNullTest y): 117case BoundDagNonNullTest nn: 155public new BoundDagNonNullTest Update(BoundDagTemp input)
BoundTree\BoundDecisionDag.cs (1)
186case BoundDagNonNullTest d:
FlowAnalysis\NullableWalker_Patterns.cs (1)
555case BoundDagNonNullTest t:
Generated\BoundNodes.xml.Generated.cs (8)
5334public BoundDagNonNullTest Update(bool isExplicitTest, BoundDagTemp input) 5338var result = new BoundDagNonNullTest(this.Syntax, isExplicitTest, input, this.HasErrors); 9374return VisitDagNonNullTest((BoundDagNonNullTest)node, arg); 9717public virtual R VisitDagNonNullTest(BoundDagNonNullTest node, A arg) => this.DefaultVisit(node, arg); 9958public virtual BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) => this.DefaultVisit(node); 10606public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) 11995public override BoundNode? VisitDagNonNullTest(BoundDagNonNullTest node) 16679public override TreeDumperNode VisitDagNonNullTest(BoundDagNonNullTest node, object? arg) => new TreeDumperNode("dagNonNullTest", null, new TreeDumperNode[]
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (2)
372case BoundDagNonNullTest d: 517if (test is BoundDagNonNullTest nonNullTest &&