5 instantiations of BoundDagTypeEvaluation
Microsoft.CodeAnalysis.CSharp (5)
Binder\DecisionDagBuilder.cs (4)
815
var typeEvaluation = new
BoundDagTypeEvaluation
(syntax, outParameterTemp.Type.StrippedType(), outParameterTemp);
822
typeEvaluation = new
BoundDagTypeEvaluation
(syntax, type, typeEvaluationTemp);
858
var evaluation = new
BoundDagTypeEvaluation
(syntax, type, input);
1159
var evaluation = new
BoundDagTypeEvaluation
(bin.Syntax, bin.NarrowedType, input);
Generated\BoundNodes.xml.Generated.cs (1)
5475
var result = new
BoundDagTypeEvaluation
(this.Syntax, type, input, this.HasErrors);
52 references to BoundDagTypeEvaluation
Microsoft.CodeAnalysis.CSharp (52)
Binder\DecisionDagBuilder.cs (30)
36
/// reads a property; and <see cref="
BoundDagTypeEvaluation
"/> converts a value from one type to another (which
542
while (input.Source is
BoundDagTypeEvaluation
source && isDerivedType(source.Input.Type, symbol.ContainingType))
567
while (input.Source is
BoundDagTypeEvaluation
source)
815
var
typeEvaluation = new BoundDagTypeEvaluation(syntax, outParameterTemp.Type.StrippedType(), outParameterTemp);
858
var
evaluation = new BoundDagTypeEvaluation(syntax, type, input);
1159
var
evaluation = new BoundDagTypeEvaluation(bin.Syntax, bin.NarrowedType, input);
2447
case (
BoundDagTypeEvaluation
s1,
BoundDagTypeEvaluation
s2):
2469
case (
BoundDagTypeEvaluation
s1, _):
2486
case (_,
BoundDagTypeEvaluation
s2):
2589
Debug.Assert(s1.Input.Source is
BoundDagTypeEvaluation
);
2590
Debug.Assert(s2.Input.Source is
BoundDagTypeEvaluation
);
2597
case (
BoundDagTypeEvaluation
s1,
BoundDagTypeEvaluation
s2):
2624
case (
BoundDagTypeEvaluation
s1, BoundDagIndexerEvaluation or BoundDagFieldEvaluation or BoundDagPropertyEvaluation or BoundDagIndexEvaluation or BoundDagSliceEvaluation): // s2Source can be anything with an output, obtainable via MakeResultTemp().
2636
case (BoundDagIndexerEvaluation or BoundDagFieldEvaluation or BoundDagPropertyEvaluation or BoundDagIndexEvaluation or BoundDagSliceEvaluation,
BoundDagTypeEvaluation
s2):
2667
internal static BoundDagEvaluation? SkipAllTypeEvaluations(
BoundDagTypeEvaluation
typeEval)
2674
while (input.Source is
BoundDagTypeEvaluation
source)
2914
case
BoundDagTypeEvaluation
a:
3662
case
BoundDagTypeEvaluation
typeEval:
3790
private static Tests RemoveTypeEvaluation(One tests, DecisionDagBuilder dagBuilder, ref ImmutableDictionary<BoundDagTemp, BoundDagTemp> tempMap,
BoundDagTypeEvaluation
e1)
3792
if (tests.Test is
BoundDagTypeEvaluation
typeEval && IsSameEntity(typeEval.MakeResultTemp(), e1.MakeResultTemp()))
3802
else if (typeEval.Input is { Source: not
BoundDagTypeEvaluation
} typeEvalInput)
3832
static Tests? replaceUnionTypeEvaluation(DecisionDagBuilder dagBuilder,
BoundDagTypeEvaluation
e1,
BoundDagTypeEvaluation
typeEval)
3843
var
newTypeEval = typeEval.Update(e1.Input);
3935
Debug.Assert(passThrough.Input.Source is
BoundDagTypeEvaluation
);
3936
return new BoundDagPassThroughEvaluation(passThrough.Syntax, ((
BoundDagTypeEvaluation
)UpdateDagTempReferences((
BoundDagTypeEvaluation
)passThrough.Input.Source, ref tempMap)).MakeResultTemp());
3939
case
BoundDagTypeEvaluation
:
Binder\PatternExplainer.cs (2)
407
if (evaluations is [
BoundDagTypeEvaluation
{ Type: var evaluationType } te])
439
evaluations[0] is
BoundDagTypeEvaluation
{ Type: var evaluationType } te &&
BoundTree\BoundDagEvaluation.cs (5)
23
Debug.Assert(other is BoundDagIndexerEvaluation or
BoundDagTypeEvaluation
or BoundDagPassThroughEvaluation ||
24
this is BoundDagIndexerEvaluation or
BoundDagTypeEvaluation
or BoundDagPassThroughEvaluation ||
55
BoundDagTypeEvaluation
e => e.Type,
139
public new
BoundDagTypeEvaluation
Update(BoundDagTemp input)
382
Debug.Assert(Input.Source is
BoundDagTypeEvaluation
);
BoundTree\BoundDagTest.cs (1)
64
case
BoundDagTypeEvaluation
a:
FlowAnalysis\NullableWalker_Patterns.cs (3)
460
case
BoundDagTypeEvaluation
e:
589
&& t.Input.Source is
BoundDagTypeEvaluation
{ Input: { IsOriginalInput: true } })
708
case
BoundDagTypeEvaluation
e:
Generated\BoundNodes.xml.Generated.cs (8)
5471
public
BoundDagTypeEvaluation
Update(TypeSymbol type, BoundDagTemp input)
5475
var
result = new BoundDagTypeEvaluation(this.Syntax, type, input, this.HasErrors);
9367
return VisitDagTypeEvaluation((
BoundDagTypeEvaluation
)node, arg);
9705
public virtual R VisitDagTypeEvaluation(
BoundDagTypeEvaluation
node, A arg) => this.DefaultVisit(node, arg);
9946
public virtual BoundNode? VisitDagTypeEvaluation(
BoundDagTypeEvaluation
node) => this.DefaultVisit(node);
10626
public override BoundNode? VisitDagTypeEvaluation(
BoundDagTypeEvaluation
node)
12021
public override BoundNode? VisitDagTypeEvaluation(
BoundDagTypeEvaluation
node)
16726
public override TreeDumperNode VisitDagTypeEvaluation(
BoundDagTypeEvaluation
node, object? arg) => new TreeDumperNode("dagTypeEvaluation", null, new TreeDumperNode[]
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (3)
212
case
BoundDagTypeEvaluation
t:
503
evaluation is
BoundDagTypeEvaluation
typeEvaluation1 &&
518
evaluation is
BoundDagTypeEvaluation
typeEvaluation2 &&