70 references to GetConversion
Microsoft.CodeAnalysis.CSharp (29)
Binder\Binder_Conversions.cs (2)
71
Debug.Assert(BoundNode.
GetConversion
(result, placeholder1) == conversion);
77
Debug.Assert(BoundNode.
GetConversion
(result2, placeholder2) == conversion);
Binder\RefSafetyAnalysis.cs (1)
797
var underlyingConversion = BoundNode.
GetConversion
(placeholderConversion, placeholder);
Compilation\CSharpSemanticModel.cs (1)
2148
conversion = BoundNode.
GetConversion
(initializer.ElementPointerConversion, initializer.ElementPointerPlaceholder);
Compilation\DeconstructionInfo.cs (1)
73
: deconstructConversionInfo.SelectAsArray(c => new DeconstructionInfo(BoundNode.
GetConversion
(c.conversion, c.placeholder)));
Compilation\MemberSemanticModel.cs (2)
984
BoundNode.
GetConversion
(boundForEach.ElementConversion, boundForEach.ElementPlaceholder),
985
BoundNode.
GetConversion
(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder));
FlowAnalysis\NullableWalker.cs (8)
9328
var underlyingConversion = BoundNode.
GetConversion
(placeholderConversion, placeholder);
9369
var underlyingConversion = BoundNode.
GetConversion
(placeholderConversion, placeholder);
9570
BoundNode.
GetConversion
(node.OperandConversion, node.OperandPlaceholder),
9600
BoundNode.
GetConversion
(node.ResultConversion, node.ResultPlaceholder),
9648
BoundNode.
GetConversion
(node.LeftConversion, node.LeftPlaceholder),
9682
BoundNode.
GetConversion
(node.FinalConversion, node.FinalPlaceholder),
10205
Conversion conversion = BoundNode.
GetConversion
(node.ElementConversion, node.ElementPlaceholder);
10627
switch (BoundNode.
GetConversion
(node.OperandConversion, node.OperandPlaceholder).Kind)
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
798
if (BoundNode.
GetConversion
(node.LeftConversion, node.LeftPlaceholder) is { IsUserDefined: true } leftConversion)
Lowering\LocalRewriter\LocalRewriter_AsOperator.cs (1)
49
var conversion = BoundNode.
GetConversion
(operandConversion, operandPlaceholder);
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (2)
237
BoundNode.
GetConversion
(nestedConversion, placeholder), temps, effects, isUsed, inInit);
373
if (BoundNode.
GetConversion
(conversion, placeholder).IsIdentity)
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (4)
35
Debug.Assert(BoundNode.
GetConversion
(leftConversion, leftPlaceholder).IsValid);
94
BoundNode.
GetConversion
(leftConversion, leftPlaceholder) is { IsImplicit: true, IsUserDefined: false })
101
if (BoundNode.
GetConversion
(leftConversion, leftPlaceholder) is { IsIdentity: true } or { Kind: ConversionKind.ExplicitNullable })
231
Debug.Assert(BoundNode.
GetConversion
(leftConversion, leftPlaceholder).IsValid);
Operations\CSharpOperationFactory.cs (6)
1137
Conversion conversion = BoundNode.
GetConversion
(boundAsOperator.OperandConversion, boundAsOperator.OperandPlaceholder);
1293
Conversion inConversion = BoundNode.
GetConversion
(boundCompoundAssignmentOperator.LeftConversion, boundCompoundAssignmentOperator.LeftPlaceholder);
1294
Conversion outConversion = BoundNode.
GetConversion
(boundCompoundAssignmentOperator.FinalConversion, boundCompoundAssignmentOperator.FinalPlaceholder);
1526
Conversion valueConversion = BoundNode.
GetConversion
(boundNullCoalescingOperator.LeftConversion, boundNullCoalescingOperator.LeftPlaceholder);
1807
BoundNode.
GetConversion
(enumeratorInfoOpt.CurrentConversion, enumeratorInfoOpt.CurrentPlaceholder),
1808
BoundNode.
GetConversion
(boundForEachStatement.ElementConversion, boundForEachStatement.ElementPlaceholder),
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (40)
Semantics\ForEachTests.cs (40)
1215
Assert.Equal(ConversionKind.Unboxing, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1217
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1253
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1255
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1297
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1299
Assert.Equal(ConversionKind.ImplicitNumeric, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1341
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1343
Assert.Equal(ConversionKind.ImplicitNumeric, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1374
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1376
Assert.Equal(ConversionKind.Unboxing, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1414
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1416
Assert.Equal(ConversionKind.ImplicitNumeric, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1456
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1458
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1495
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1497
Assert.Equal(ConversionKind.Unboxing, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1528
Assert.Equal(ConversionKind.Unboxing, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1530
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1559
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1561
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1590
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1614
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1645
Assert.Equal(ConversionKind.ExplicitReference, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind); //object to C.var
1647
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1676
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1678
Assert.Equal(ConversionKind.ExplicitDynamic, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1709
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1711
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind); //NB: differs from explicit case
1750
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1752
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1834
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1836
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
1881
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
1883
Assert.Equal(ConversionKind.ImplicitNumeric, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
3125
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
3127
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
3243
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(info.CurrentConversion, info.CurrentPlaceholder).Kind);
3245
Assert.Equal(ConversionKind.Identity, BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder).Kind);
3301
Assert.Equal(BoundNode.
GetConversion
(boundNode.ElementConversion, boundNode.ElementPlaceholder), statementInfo.ElementConversion);
3302
Assert.Equal(BoundNode.
GetConversion
(enumeratorInfo.CurrentConversion, enumeratorInfo.CurrentPlaceholder), statementInfo.CurrentConversion);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
Symbols\ConversionTests.cs (1)
1737
var elementConversion = BoundNode.
GetConversion
(boundForEach.ElementConversion, boundForEach.ElementPlaceholder);