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