52 references to ExplicitNullable
Microsoft.CodeAnalysis.CSharp (31)
Binder\Binder_Operators.cs (2)
3521case ConversionKind.ExplicitNullable: 3808case ConversionKind.ExplicitNullable:
Binder\Semantics\Conversions\Conversion.cs (2)
290Debug.Assert(kind == ConversionKind.ImplicitNullable || kind == ConversionKind.ExplicitNullable); 692return Kind == ConversionKind.ImplicitNullable || Kind == ConversionKind.ExplicitNullable;
Binder\Semantics\Conversions\ConversionEasyOut.cs (1)
32const byte XNL = (byte)ConversionKind.ExplicitNullable;
Binder\Semantics\Conversions\ConversionKindExtensions.cs (1)
60case ExplicitNullable:
Binder\Semantics\Conversions\ConversionsBase.cs (9)
482if (convKind != ConversionKind.ImplicitNullable && convKind != ConversionKind.ExplicitNullable) 891Conversion.MakeNullableConversion(ConversionKind.ExplicitNullable, underlyingConversion) : 1266return new Conversion(ConversionKind.ExplicitNullable, ImmutableArray.Create(underlyingTupleConversion)); 2307return new Conversion(ConversionKind.ExplicitNullable, Conversion.IdentityUnderlying); 2312return new Conversion(ConversionKind.ExplicitNullable, Conversion.ImplicitNumericUnderlying); 2317return new Conversion(ConversionKind.ExplicitNullable, Conversion.ExplicitNumericUnderlying); 2323return new Conversion(ConversionKind.ExplicitNullable, ImmutableArray.Create(tupleConversion)); 2328return new Conversion(ConversionKind.ExplicitNullable, Conversion.ExplicitEnumerationUnderlying); 2333return new Conversion(ConversionKind.ExplicitNullable, Conversion.PointerToIntegerUnderlying);
Binder\Semantics\Conversions\UserDefinedImplicitConversions.cs (1)
632case ConversionKind.ExplicitNullable:
CodeGen\EmitConversion.cs (1)
175case ConversionKind.ExplicitNullable:
FlowAnalysis\AbstractFlowPass.cs (1)
2439|| (expr is BoundConversion { ConversionKind: ConversionKind.ExplicitNullable or ConversionKind.ImplicitNullable } conv
FlowAnalysis\NullableWalker.cs (3)
1990case ConversionKind.ExplicitNullable: 7728case ConversionKind.ExplicitNullable: 8145case ConversionKind.ExplicitNullable:
FlowAnalysis\NullableWalker_Patterns.cs (1)
432case ConversionKind.ExplicitNullable when AreNullableAndUnderlyingTypes(inputType, e.Type, out _):
Lowering\DiagnosticsPass_Warnings.cs (1)
868if (conv.ConversionKind == ConversionKind.ExplicitNullable || conv.ConversionKind == ConversionKind.ImplicitNullable)
Lowering\Extensions.cs (2)
62case ConversionKind.ExplicitNullable: 116case ConversionKind.ExplicitNullable:
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
218if (conversion.Kind == ConversionKind.ExplicitNullable &&
Lowering\LocalRewriter\LocalRewriter_Call.cs (1)
347case ConversionKind.ExplicitNullable:
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (1)
357case ConversionKind.ExplicitNullable:
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (1)
101if (BoundNode.GetConversion(leftConversion, leftPlaceholder) is { IsIdentity: true } or { Kind: ConversionKind.ExplicitNullable })
Lowering\LocalRewriter\LocalRewriter_TupleBinaryOperator.cs (1)
89(kind == ConversionKind.ImplicitNullable || kind == ConversionKind.ExplicitNullable) &&
Lowering\SyntheticBoundNodeFactory.cs (1)
1383if (conversion.Kind == ConversionKind.ExplicitNullable &&
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (6)
CodeGen\CodeGenTupleTest.cs (6)
7511Assert.Equal(ConversionKind.ExplicitNullable, tupleConversion.Kind); 8342Assert.Equal(ConversionKind.ExplicitNullable, model.GetConversion(node).Kind); 8591Assert.Equal(ConversionKind.ExplicitNullable, model.GetConversion(node).Kind); 25749Assert.Equal(ConversionKind.ExplicitNullable, model.GetConversion(first).Kind); 25815Assert.Equal(ConversionKind.ExplicitNullable, model.GetConversion(tuple).Kind); 25820Assert.Equal(ConversionKind.ExplicitNullable, model.GetConversion(first).Kind);
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (5)
Emit\NumericIntPtrTests.cs (5)
47internal static readonly ConversionKind[] ExplicitNullableEnumeration = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitEnumeration }; 48internal static readonly ConversionKind[] ExplicitNullableImplicitNumeric = new[] { ConversionKind.ExplicitNullable, ConversionKind.ImplicitNumeric }; 49internal static readonly ConversionKind[] ExplicitNullableNumeric = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitNumeric }; 50internal static readonly ConversionKind[] ExplicitNullablePointerToInteger = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitPointerToInteger }; 51internal static readonly ConversionKind[] ExplicitNullableIdentity = new[] { ConversionKind.ExplicitNullable, ConversionKind.Identity };
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (6)
Semantics\FunctionPointerTests.cs (1)
340Assert.Equal(ConversionKind.ExplicitNullable, conversion.Kind);
Semantics\NativeIntegerTests.cs (5)
40internal static readonly ConversionKind[] ExplicitNullableEnumeration = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitEnumeration }; 41internal static readonly ConversionKind[] ExplicitNullableImplicitNumeric = new[] { ConversionKind.ExplicitNullable, ConversionKind.ImplicitNumeric }; 42internal static readonly ConversionKind[] ExplicitNullableNumeric = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitNumeric }; 43internal static readonly ConversionKind[] ExplicitNullablePointerToInteger = new[] { ConversionKind.ExplicitNullable, ConversionKind.ExplicitPointerToInteger }; 44internal static readonly ConversionKind[] ExplicitNullableIdentity = new[] { ConversionKind.ExplicitNullable, ConversionKind.Identity };
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (4)
Compilation\GetSemanticInfoTests.cs (3)
541ConversionTestHelper(model, v2[0].Initializer.Value, ConversionKind.ImplicitNullable, ConversionKind.ExplicitNullable); 553ConversionTestHelper(model, v5[0].Initializer.Value, ConversionKind.ImplicitEnumeration, ConversionKind.ExplicitNullable); 765case ConversionKind.ExplicitNullable:
Symbols\ConversionTests.cs (1)
81const ConversionKind Xnl = ConversionKind.ExplicitNullable;