106 references to IsIdentity
Microsoft.AspNetCore.Components.Analyzers (1)
ComponentParameterUsageAnalyzer.cs (1)
90if (conversion.Exists && conversion.IsIdentity)
Microsoft.AspNetCore.Components.SdkAnalyzers (1)
ComponentParameterUsageAnalyzer.cs (1)
90if (conversion.Exists && conversion.IsIdentity)
Microsoft.CodeAnalysis.CSharp (70)
Binder\Binder_Conversions.cs (6)
69Debug.Assert(result is BoundConversion || (conversion.IsIdentity && ((object)result == source) || source.NeedsToBeConverted()) || hasErrors); 151if (conversion.IsIdentity) 1599if (!conversion.IsIdentity) 2603Debug.Assert(toParameterTypeConversion.UnderlyingConversions[0].IsIdentity); 2655Debug.Assert(!fromReturnTypeConversion.UnderlyingConversions[0].IsIdentity); 2751Debug.Assert(analysis.TargetConversion is { IsIdentity: true } or { IsNullable: true, IsImplicit: true });
Binder\Binder_Expressions.cs (4)
3523Debug.Assert(result.ConversionForArg(arg).IsIdentity); 3579else if (!kind.IsIdentity) 3600Debug.Assert(kind.IsIdentity); 5232case BoundConversion { Conversion.IsIdentity: true, Operand: BoundParameter param }:
Binder\Binder_Patterns.cs (6)
262bestMatchConversion.IsIdentity) 293!(conversion.IsIdentity || conversion.IsReference || conversion.IsBoxing || 294(conversion.IsNullable && conversion.UnderlyingConversions[0].IsIdentity))) 331if (conversion.IsIdentity) 341(bestMatchConversion.IsNullable && bestMatchConversion.UnderlyingConversions[0].IsIdentity)); 953if (patternConversion.IsIdentity || patternConversion.IsConstantExpression || patternConversion.IsNumeric)
Binder\ForEachLoopBinder.cs (2)
587collectionConversionClassification.IsIdentity || 663Debug.Assert(collectionConversionClassification.IsIdentity);
Binder\RefSafetyAnalysis.cs (1)
1270inlineArray: node.Expression is not BoundConversion { Conversion.IsIdentity: true, ExplicitCastInCode: false, Operand: BoundExpression operand } ? node.Expression : operand,
Binder\Semantics\Conversions\Conversion.cs (1)
1220return new CommonConversion(Exists, IsIdentity, IsNumeric, IsReference, IsImplicit, IsNullable, methodSymbol, constrainedToType);
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (2)
1038Debug.Assert(targetConversion.IsIdentity || (targetConversion.IsNullable && targetConversion.UnderlyingConversions[0].IsIdentity));
Binder\Semantics\OverloadResolution\OverloadResolution.cs (1)
4660else if (!conversion.IsIdentity)
Binder\SwitchBinder.cs (1)
441Debug.Assert(conversion.UserDefinedToConversion.IsIdentity);
BoundTree\BoundConversion.cs (7)
31Debug.Assert(Conversion.IsIdentity); 72Debug.Assert(Conversion.UserDefinedFromConversion.IsIdentity || 102Debug.Assert(Conversion.UnderlyingConversions[0].IsIdentity); 110Debug.Assert(ConversionGroupOpt.Conversion.UserDefinedFromConversion.IsIdentity || 120Debug.Assert(!Conversion.UnderlyingConversions[0].IsIdentity); 180Debug.Assert(sourceConversion.IsIdentity || 205Debug.Assert(Conversion.UnderlyingConversions[0].IsIdentity);
Compilation\BuiltInOperators.cs (2)
934if (leftConversion.IsIdentity || leftConversion.IsReference) 940if (rightConversion.IsIdentity || rightConversion.IsReference)
FlowAnalysis\NullableWalker.cs (6)
9996if (conversion.IsIdentity && trackMembers && (conversionOpt is { } ? !conversionOpt.Conversion.IsIdentity : (targetInstanceSlotOpt > 0))) 10607Debug.Assert(analysis.TargetConversion is { IsIdentity: true } or { IsNullable: true, IsImplicit: true }); 10616Debug.Assert(sourceToParameterConversion is not null || analysis.SourceConversion.IsIdentity); 11558if (underlyingConversion.IsIdentity) 12426else if (conversion.IsIdentity ||
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (2)
621Debug.Assert(c.IsReference || c.IsIdentity); 742Debug.Assert(c.IsReference || c.IsIdentity);
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (2)
497Debug.Assert(c.IsReference || c.IsIdentity); 538Debug.Assert(c.IsReference || c.IsIdentity);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
179Debug.Assert(c.IsReference || c.IsIdentity); 1258Debug.Assert(c.IsBoxing || c.IsReference || c.IsIdentity);
Lowering\DiagnosticsPass_Warnings.cs (1)
288if (!node.Operator.Kind.IsDynamic() && node.LeftConversion is BoundConversion { Conversion: { IsIdentity: false, Exists: true } conversion })
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (1)
490Debug.Assert(c.IsNumeric || c.IsReference || c.IsIdentity || c.IsPointer || c.IsBoxing || c.IsEnumeration);
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (2)
220Debug.Assert(_factory.ClassifyEmitConversion(input, inputType).IsIdentity); 520(conv.IsIdentity || conv.Kind == ConversionKind.ImplicitReference || conv.IsBoxing) &&
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
562Debug.Assert(c.IsReference || c.IsIdentity);
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (4)
646Debug.Assert(c.IsReference || c.IsIdentity); 966Debug.Assert(analysis.TargetConversion is { IsIdentity: true } or { IsNullable: true, IsImplicit: true }); 970Debug.Assert(!analysis.SourceConversion.IsIdentity); 990Debug.Assert(!analysis.TargetConversion.IsIdentity);
Lowering\LocalRewriter\LocalRewriter_DeconstructionAssignmentOperator.cs (1)
373if (BoundNode.GetConversion(conversion, placeholder).IsIdentity)
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (2)
44if (leftConversion is BoundConversion { Conversion: { IsIdentity: false } }) 99if (BoundNode.GetConversion(leftConversion, leftPlaceholder) is { IsIdentity: true } or { Kind: ConversionKind.ExplicitNullable })
Lowering\LocalRewriter\LocalRewriter_ObjectCreationExpression.cs (1)
191Debug.Assert(c.IsReference || c.IsIdentity);
Lowering\LocalRewriter\LocalRewriter_SwitchExpression.cs (1)
132Debug.Assert(c.IsBoxing || c.IsReference || c.IsIdentity);
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (2)
407case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }: 442case BoundConversion { Conversion: { IsIdentity: true }, Operand: var o }:
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (1)
769if (!conversion.Conversion.IsIdentity)
Lowering\SyntheticBoundNodeFactory.cs (1)
707Debug.Assert(c.IsBoxing || c.IsReference || c.IsIdentity);
Operations\CSharpOperationFactory.cs (3)
1136if (boundConversion.ExplicitCastInCode && conversion.IsIdentity && boundOperand.Kind == BoundKind.Conversion) 1661if (valueConversion.Exists && !valueConversion.IsIdentity && 2044boundForEachStatement.Expression is not BoundConversion { Conversion.IsIdentity: true, ExplicitCastInCode: false, Operand: BoundExpression operand } ?
Symbols\Source\ParameterHelpers.cs (1)
991conversion.IsIdentity && parameterType.SpecialType == SpecialType.System_Object && defaultExpression.Type.IsDynamic())
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (1)
793Debug.Assert(c.IsUnboxing || c.IsIdentity);
Symbols\Synthesized\Records\SynthesizedRecordPrintMembers.cs (1)
222Debug.Assert(c.IsIdentity || c.IsReference || c.IsBoxing);
Symbols\Synthesized\SynthesizedUnionCtor.cs (1)
68return c.Exists && c.IsImplicit && (c.IsIdentity || c.IsReference || c.IsBoxing);
Microsoft.CodeAnalysis.CSharp.CodeStyle (9)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (1)
167if (conversion.IsIdentity)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
154if (conversion is { Exists: true, IsIdentity: false, IsTupleConversion: false, IsTupleLiteralConversion: false })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
712if (!conversion.IsIdentity) 1168if (conversion.IsIdentity) 1216if (!conversion.IsIdentity) 1673var convertedType = originalConversion.IsIdentity ? originalConvertedType : originalSemanticModel.Compilation.ObjectType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (1)
830if (originalConversion.IsIdentity)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (2)
134if (foreachStatementInfo.ElementConversion.IsIdentity) 293if (conversion.IsIdentity)
Microsoft.CodeAnalysis.CSharp.Features (3)
ConvertForEachToFor\CSharpConvertForEachToForCodeRefactoringProvider.cs (1)
82var donotCastElement = foreachStatementInfo.ElementConversion.IsIdentity;
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (1)
167if (conversion.IsIdentity)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
154if (conversion is { Exists: true, IsIdentity: false, IsTupleConversion: false, IsTupleLiteralConversion: false })
Microsoft.CodeAnalysis.CSharp.Workspaces (7)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
712if (!conversion.IsIdentity) 1168if (conversion.IsIdentity) 1216if (!conversion.IsIdentity) 1673var convertedType = originalConversion.IsIdentity ? originalConvertedType : originalSemanticModel.Compilation.ObjectType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (1)
830if (originalConversion.IsIdentity)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (2)
134if (foreachStatementInfo.ElementConversion.IsIdentity) 293if (conversion.IsIdentity)
Microsoft.Extensions.Logging.Generators (1)
LoggerMessageGenerator.Parser.cs (1)
827return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Extensions.Options.SourceGeneration (1)
ParserUtilities.cs (1)
55return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Gen.BuildMetadata (1)
src\Generators\Shared\ParserUtilities.cs (1)
60return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Gen.Logging (1)
src\Generators\Shared\ParserUtilities.cs (1)
60return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Gen.MetadataExtractor (1)
src\Generators\Shared\ParserUtilities.cs (1)
60return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Gen.Metrics (1)
src\Generators\Shared\ParserUtilities.cs (1)
60return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Microsoft.Gen.MetricsReports (1)
src\Generators\Shared\ParserUtilities.cs (1)
60return conversion.IsIdentity || (conversion.IsReference && conversion.IsImplicit);
Roslyn.Diagnostics.CSharp.Analyzers (7)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (4)
712if (!conversion.IsIdentity) 1168if (conversion.IsIdentity) 1216if (!conversion.IsIdentity) 1673var convertedType = originalConversion.IsIdentity ? originalConvertedType : originalSemanticModel.Compilation.ObjectType;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (1)
830if (originalConversion.IsIdentity)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (2)
134if (foreachStatementInfo.ElementConversion.IsIdentity) 293if (conversion.IsIdentity)
System.Text.Json.SourceGeneration (1)
JsonSourceGenerator.Parser.cs (1)
1822return conversion.IsImplicit || conversion.IsIdentity;