41 references to ImplicitReference
Microsoft.CodeAnalysis.CSharp (41)
Binder\Binder_Await.cs (1)
485var result = conversion is { IsImplicit: true, Kind: ConversionKind.Identity or ConversionKind.ImplicitReference };
Binder\Binder_Conversions.cs (3)
333if (conversion.Kind is ConversionKind.ImplicitReference or ConversionKind.ExplicitReference && 1608case ConversionKind.ImplicitReference: 3894case ConversionKind.ImplicitReference:
Binder\Binder_Operators.cs (4)
502Debug.Assert(conversion.Kind is ConversionKind.ImplicitReference); 3608Debug.Assert(conversion.Kind is ConversionKind.ImplicitReference); 5300case ConversionKind.ImplicitReference: 5553case ConversionKind.ImplicitReference:
Binder\Binder_Patterns.cs (1)
789else if ((conversion.ConversionKind == ConversionKind.Boxing || conversion.ConversionKind == ConversionKind.ImplicitReference)
Binder\Semantics\Conversions\Conversion.cs (3)
252case ConversionKind.ImplicitReference: 297internal static Conversion ImplicitReference => new Conversion(ConversionKind.ImplicitReference); 859return Kind == ConversionKind.ImplicitReference || Kind == ConversionKind.ExplicitReference;
Binder\Semantics\Conversions\ConversionEasyOut.cs (1)
24const byte IRF = (byte)ConversionKind.ImplicitReference;
Binder\Semantics\Conversions\ConversionKindExtensions.cs (1)
33case ImplicitReference:
Binder\Semantics\Conversions\ConversionsBase.cs (3)
592case ConversionKind.ImplicitReference: 910case ConversionKind.ImplicitReference: 2023case ConversionKind.ImplicitReference:
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (1)
661case ConversionKind.ImplicitReference:
BoundTree\BoundExpression.cs (1)
519case ConversionKind.ImplicitReference:
CodeGen\EmitConversion.cs (2)
104case ConversionKind.ImplicitReference: 193case ConversionKind.ImplicitReference:
CodeGen\EmitExpression.cs (1)
1569case ConversionKind.ImplicitReference:
FlowAnalysis\NullableWalker_Patterns.cs (2)
715case ConversionKind.ImplicitReference: 879ConversionKind.ImplicitReference => true,
FlowAnalysis\NullableWalker.cs (7)
2246case ConversionKind.ImplicitReference: 5818if (conversion.Kind is ConversionKind.Identity or ConversionKind.ImplicitReference) 6190case ConversionKind.ImplicitReference: 9610case ConversionKind.ImplicitReference: 10118goto case ConversionKind.ImplicitReference; 10120case ConversionKind.ImplicitReference: 13303case ConversionKind.ImplicitReference:
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (1)
728case ConversionKind.ImplicitReference:
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
610case ConversionKind.ImplicitReference:
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (4)
211if (conversion.Kind is not (ConversionKind.Identity or ConversionKind.ImplicitReference)) 218return conversion.Kind is ConversionKind.Identity or ConversionKind.ImplicitReference; 454Debug.Assert(conversionKind == ConversionKind.Identity || (isReadOnlySpan && conversionKind == ConversionKind.ImplicitReference)); 834? spreadElementConversion.Kind is ConversionKind.Identity or ConversionKind.ImplicitReference
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
413case ConversionKind.ImplicitReference:
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (1)
92BoundNode.GetConversion(leftConversion, leftPlaceholder) is { Kind: ConversionKind.Identity or ConversionKind.ImplicitReference })
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
520(conv.IsIdentity || conv.Kind == ConversionKind.ImplicitReference || conv.IsBoxing) &&
Lowering\SyntheticBoundNodeFactory.cs (1)
1550if (conversion.Kind == ConversionKind.ImplicitReference && arg.IsLiteralNull())