152 references to IsIdentity
Microsoft.CodeAnalysis.CSharp (26)
Binder\Binder_Conversions.cs (2)
65
Debug.Assert(result is BoundConversion || (conversion.
IsIdentity
&& ((object)result == source) || source.NeedsToBeConverted()) || hasErrors);
107
if (conversion.
IsIdentity
)
Binder\Binder_Expressions.cs (3)
3181
else if (!kind.
IsIdentity
)
3206
Debug.Assert(kind.
IsIdentity
);
4295
case BoundConversion { Conversion.
IsIdentity
: true, Operand: BoundParameter param }:
Binder\Binder_Patterns.cs (1)
460
if (patternConversion.
IsIdentity
|| patternConversion.IsConstantExpression || patternConversion.IsNumeric)
Binder\ForEachLoopBinder.cs (2)
538
Debug.Assert(collectionConversionClassification.
IsIdentity
);
565
collectionConversionClassification.
IsIdentity
||
Binder\Semantics\Conversions\Conversion.cs (1)
1059
return new CommonConversion(Exists,
IsIdentity
, IsNumeric, IsReference, IsImplicit, IsNullable, methodSymbol, constrainedToType);
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
3724
else if (!conversion.
IsIdentity
)
Binder\SwitchBinder.cs (1)
415
Debug.Assert(conversion.UserDefinedToConversion.
IsIdentity
);
Compilation\BuiltInOperators.cs (2)
938
if (leftConversion.
IsIdentity
|| leftConversion.IsReference)
944
if (rightConversion.
IsIdentity
|| rightConversion.IsReference)
FlowAnalysis\NullableWalker.cs (2)
9385
if (underlyingConversion.
IsIdentity
)
10018
else if (conversion.
IsIdentity
||
Lowering\DiagnosticsPass_Warnings.cs (1)
288
if (!node.Operator.Kind.IsDynamic() && node.LeftConversion is BoundConversion { Conversion: {
IsIdentity
: false, Exists: true } conversion })
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
485
(conv.
IsIdentity
|| conv.Kind == ConversionKind.ImplicitReference || conv.IsBoxing) &&
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (1)
373
if (BoundNode.GetConversion(conversion, placeholder).
IsIdentity
)
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
46
if (leftConversion is BoundConversion { Conversion: {
IsIdentity
: false } })
101
if (BoundNode.GetConversion(leftConversion, leftPlaceholder) is {
IsIdentity
: true } or { Kind: ConversionKind.ExplicitNullable })
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (2)
401
case BoundConversion { Conversion: {
IsIdentity
: true }, Operand: var o }:
435
case BoundConversion { Conversion: {
IsIdentity
: true }, Operand: var o }:
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
603
if (!conversion.Conversion.
IsIdentity
)
Operations\CSharpOperationFactory.cs (2)
1090
if (boundConversion.ExplicitCastInCode && conversion.
IsIdentity
&& boundOperand.Kind == BoundKind.Conversion)
1528
if (valueConversion.Exists && !valueConversion.
IsIdentity
&&
Symbols\Source\ParameterHelpers.cs (1)
752
conversion.
IsIdentity
&& parameterType.SpecialType == SpecialType.System_Object && defaultExpression.Type.IsDynamic())
Microsoft.CodeAnalysis.CSharp.CodeStyle (9)
CastSimplifier.cs (4)
537
if (!conversion.
IsIdentity
)
849
if (conversion.
IsIdentity
)
897
if (!conversion.
IsIdentity
)
1326
var convertedType = originalConversion.
IsIdentity
? originalConvertedType : originalSemanticModel.Compilation.ObjectType;
ConversionExtensions.cs (1)
11
return conversion.
IsIdentity
||
CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
153
!conversion.
IsIdentity
&&
CSharpUseImplicitTypeHelper.cs (2)
156
if (foreachStatementInfo.ElementConversion.
IsIdentity
)
329
if (conversion.
IsIdentity
)
SpeculationAnalyzer.cs (1)
757
if (originalConversion.
IsIdentity
)
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (2)
Semantics\PatternMatchingTestBase.cs (2)
137
Assert.True(model.GetConversion(typeSyntax).
IsIdentity
);
396
Assert.True(model.GetConversion(decl.Type).
IsIdentity
);
Microsoft.CodeAnalysis.CSharp.Features (2)
ConvertForEachToFor\CSharpConvertForEachToForCodeRefactoringProvider.cs (1)
81
var donotCastElement = foreachStatementInfo.ElementConversion.
IsIdentity
;
CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
153
!conversion.
IsIdentity
&&
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (97)
Semantics\DeconstructionTests.cs (78)
4266
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4278
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4290
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4296
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4307
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
4312
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
4321
Assert.True(model.GetConversion(tuple).
IsIdentity
);
4401
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4409
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4421
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4427
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4438
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
4443
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
4452
Assert.True(model.GetConversion(tuple).
IsIdentity
);
4525
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4537
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4549
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4558
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4569
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
4577
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
4586
Assert.True(model.GetConversion(tuple).
IsIdentity
);
4675
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4683
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4694
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4699
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4769
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4777
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4788
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4793
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4847
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
4855
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
4866
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
4874
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
4951
Assert.True(model.GetConversion(declaration).
IsIdentity
);
4956
Assert.True(model.GetConversion(declaration.Type).
IsIdentity
);
4997
Assert.True(model.GetConversion(declaration).
IsIdentity
);
5002
Assert.True(model.GetConversion(declaration.Type).
IsIdentity
);
5055
Assert.True(model.GetConversion(declaration).
IsIdentity
);
5063
Assert.True(model.GetConversion(declaration.Type).
IsIdentity
);
5215
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5223
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5235
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5241
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5252
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
5257
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
5269
Assert.True(model.GetConversion(tuples[0]).
IsIdentity
);
5279
Assert.True(model.GetConversion(tuples[1]).
IsIdentity
);
5359
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5367
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5379
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5385
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5396
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
5401
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
5413
Assert.True(model.GetConversion(tuples[0]).
IsIdentity
);
5423
Assert.True(model.GetConversion(tuples[1]).
IsIdentity
);
5496
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5504
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5516
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5525
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5536
Assert.True(model.GetConversion(declarations[2]).
IsIdentity
);
5544
Assert.True(model.GetConversion(declarations[2].Type).
IsIdentity
);
5556
Assert.True(model.GetConversion(tuples[0]).
IsIdentity
);
5566
Assert.True(model.GetConversion(tuples[1]).
IsIdentity
);
5683
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5691
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5702
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5707
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5716
Assert.True(model.GetConversion(tuple).
IsIdentity
);
5793
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5801
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5812
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5817
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5826
Assert.True(model.GetConversion(tuple).
IsIdentity
);
5896
Assert.True(model.GetConversion(declarations[0]).
IsIdentity
);
5904
Assert.True(model.GetConversion(declarations[0].Type).
IsIdentity
);
5915
Assert.True(model.GetConversion(declarations[1]).
IsIdentity
);
5923
Assert.True(model.GetConversion(declarations[1].Type).
IsIdentity
);
5932
Assert.True(model.GetConversion(tuple).
IsIdentity
);
Semantics\IteratorTests.cs (2)
489
Assert.True(model.GetConversion(node).
IsIdentity
);
527
Assert.True(model.GetConversion(node).
IsIdentity
);
Semantics\OutVarTests.cs (9)
1034
Assert.True(model.GetConversion(decl).
IsIdentity
);
1056
Assert.True(model.GetConversion(typeSyntax).
IsIdentity
);
33017
Assert.True(model.GetConversion(declaration1.Type).
IsIdentity
);
33033
Assert.True(model.GetConversion(declaration2.Type).
IsIdentity
);
33089
Assert.True(model.GetConversion(declaration1.Type).
IsIdentity
);
33131
Assert.True(model.GetConversion(declaration1.Type).
IsIdentity
);
33147
Assert.True(model.GetConversion(declaration2.Type).
IsIdentity
);
33195
Assert.True(model.GetConversion(declaration1.Type).
IsIdentity
);
33213
Assert.True(model.GetConversion(declaration2.Type).
IsIdentity
);
Semantics\TargetTypedDefaultTests.cs (1)
3522
Assert.True(model.GetConversion(def).
IsIdentity
);
Semantics\Utf8StringsLiteralsTests.cs (7)
3006
Assert.True(model.GetConversion(node).
IsIdentity
);
3062
Assert.True(model.GetConversion(node).
IsIdentity
);
3118
Assert.True(model.GetConversion(node).
IsIdentity
);
3174
Assert.True(model.GetConversion(node).
IsIdentity
);
3230
Assert.True(model.GetConversion(node).
IsIdentity
);
3258
Assert.True(model.GetConversion(node).
IsIdentity
);
3314
Assert.True(model.GetConversion(node).
IsIdentity
);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (8)
Compilation\GetSemanticInfoTests.cs (1)
679
Assert.True(conv.
IsIdentity
);
Compilation\SemanticModelGetSemanticInfoTests.cs (7)
7487
Assert.False(semanticInfo.ImplicitConversion.
IsIdentity
);
14810
Assert.True(conv.
IsIdentity
);
14826
Assert.True(conv.
IsIdentity
);
14906
Assert.True(conv.
IsIdentity
);
14922
Assert.True(conv.
IsIdentity
);
15017
Assert.True(conv.
IsIdentity
);
15032
Assert.True(conv.
IsIdentity
);
Microsoft.CodeAnalysis.CSharp.Workspaces (8)
CastSimplifier.cs (4)
537
if (!conversion.
IsIdentity
)
849
if (conversion.
IsIdentity
)
897
if (!conversion.
IsIdentity
)
1326
var convertedType = originalConversion.
IsIdentity
? originalConvertedType : originalSemanticModel.Compilation.ObjectType;
ConversionExtensions.cs (1)
11
return conversion.
IsIdentity
||
CSharpUseImplicitTypeHelper.cs (2)
156
if (foreachStatementInfo.ElementConversion.
IsIdentity
)
329
if (conversion.
IsIdentity
)
SpeculationAnalyzer.cs (1)
757
if (originalConversion.
IsIdentity
)