155 references to IsNullableType
Microsoft.CodeAnalysis.VisualBasic (155)
Binding\Binder_ConditionalAccess.vb (1)
54If type.IsNullableType() Then
Binding\Binder_Conversions.vb (1)
1641Debug.Assert(Not isNullableTupleConversion OrElse destination.IsNullableType())
Binding\Binder_Delegates.vb (1)
299fromMethod.ContainingType.IsNullableType AndAlso
Binding\Binder_Expressions.vb (5)
971If Not resultType.IsNullableType() Then 2013ElseIf boundFirstArg.Type IsNot Nothing AndAlso boundFirstArg.Type.IsNullableType AndAlso boundSecondArg.IsNothingLiteral Then 2021If boundFirstArg.Type IsNot Nothing AndAlso boundFirstArg.Type.IsNullableType AndAlso 2022Not (boundSecondArg.Type IsNot Nothing AndAlso boundSecondArg.Type.IsNullableType) Then 2119If Not hasErrors AndAlso Not (boundFirstArg.IsNothingLiteral OrElse boundFirstArg.Type.IsNullableType OrElse boundFirstArg.Type.IsReferenceType) Then
Binding\Binder_Operators.vb (21)
115ElseIf targetArgumentType.IsNullableType() Then 338If (operatorKind And BinaryOperatorKind.Lifted) = 0 OrElse leftType.IsNullableType() Then 341Debug.Assert(rightType.IsNullableType()) 460If left.Type.IsNullableType Then 464If right.Type.IsNullableType Then 844Debug.Assert(Not makeNullable OrElse leftType.IsNullableType() OrElse rightType.IsNullableType()) 856ElseIf leftType.IsNullableType() Then 859Debug.Assert(makeNullable AndAlso rightType.IsNullableType()) 863rightType.IsNullableType() AndAlso 864Not leftType.IsNullableType()) 872ElseIf rightType.IsNullableType() Then 876Not rightType.IsNullableType() AndAlso 877leftType.IsNullableType()) 885If leftType.IsNullableType() Then 888Debug.Assert(rightType.IsNullableType()) 906Dim leftIsNullable = leftType.IsNullableType() 907Dim rightIsNullable = rightType.IsNullableType() 951If resultType Is Nothing OrElse Not (resultType.IsNullableType() OrElse resultType.IsObjectType()) Then 1198If operandType.IsNullableType() Then 1204Debug.Assert(((operatorKind And UnaryOperatorKind.Lifted) <> 0) = resultType.IsNullableType())
Binding\Binder_Statements.vb (3)
1641ElseIf valueType.IsNullableType Then 1678If Not rhsElementType.IsNullableType Then 3328If targetType.IsNullableType Then
Binding\Binder_Utils.vb (2)
1460If context = ConstantContext.ParameterDefaultValue AndAlso conversionType.IsNullableType Then 1503If conversionType.IsNullableType Then
CodeGen\EmitAddress.vb (2)
74Debug.Assert(Not expression.Type.IsValueType OrElse expression.Type.IsNullableType()) 293Return addressKind = AddressKind.ReadOnly OrElse addressKind = AddressKind.Immutable Or expression.Type.IsNullableType()
CodeGen\EmitConversion.vb (2)
174ElseIf typeFrom.IsNullableType Then 188ElseIf typeTo.IsNullableType Then
CodeGen\EmitExpression.vb (2)
256If receiverType.IsNullableType() Then 501If Not isStatic AndAlso targetMethod.ContainingType.IsNullableType Then
Lowering\AsyncRewriter\AsyncRewriter.AsyncMethodToClassRewriter.Expressions.vb (8)
615Debug.Assert(Not receiver.Type.IsNullableType() OrElse Not conditionalAccessReceiverPlaceholderReplacementInfo.IsSpilled) 616Debug.Assert(Not receiver.Type.IsNullableType() OrElse node.CaptureReceiver) 620Debug.Assert(Not receiver.Type.IsNullableType() OrElse Not conditionalAccessReceiverPlaceholderReplacementInfo.ForceCaptureIfReferenceType) 629If Not receiver.Type.IsReferenceType AndAlso Not receiver.Type.IsNullableType() Then 636Debug.Assert(Not receiver.Type.IsNullableType()) 677If nullCheckTarget.Type.IsReferenceType OrElse nullCheckTarget.Type.IsNullableType() Then 694Debug.Assert(Not receiver.Type.IsNullableType()) 714ElseIf nullCheckTarget.Type.IsNullableType() Then
Lowering\Diagnostics\DiagnosticsPass_ExpressionLambdas.vb (2)
44If method.ReturnType.IsNullableType Then 98If method.ReturnType.IsNullableType Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_BinaryOperator.vb (16)
74Debug.Assert(Not isLifted OrElse Not node.Call.Method.ReturnType.IsNullableType) 84Debug.Assert(Not isLifted OrElse Not node.Call.Method.ReturnType.IsNullableType) 225If originalRight.Type.IsNullableType Then 232If originalLeft.Type.IsNullableType Then 239Dim operandIsNullable As Boolean = operandType.IsNullableType 273left, right, Me._factory.Literal(resultType.IsNullableType), _factory.MethodInfo(helper, _factory.WellKnownType(WellKnownType.System_Reflection_MethodInfo))) 325left, right, Me._factory.Literal(resultType.IsNullableType), 431Dim resultTypeIsNullable As Boolean = resultType.IsNullableType 547If resultType.IsNullableType AndAlso originalRight.Kind = BoundKind.Conversion Then 552If ((conversion.ConversionKind And ConversionKind.Nullable) <> 0) AndAlso Not conversion.ExplicitCastInCode AndAlso Not operandType.IsNullableType Then 553Debug.Assert(conversion.Type.IsNullableType AndAlso conversion.Type.GetNullableUnderlyingType.SpecialType = SpecialType.System_Int32) 596Dim isNullable As Boolean = shiftedType.IsNullableType 723Debug.Assert(oldArg.Type.IsNullableType) 724Debug.Assert(Not parameterType.IsNullableType) 783If resultType.IsNullableType <> methodReturnType.IsNullableType Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_ConditionalExpresion.vb (7)
47(testExpressionType.IsNullableType AndAlso resultType.IsSameTypeIgnoringAll(testExpressionType.GetNullableUnderlyingType)) Then 113If (convKind And ConversionKind.NarrowingNullable) = ConversionKind.NarrowingNullable AndAlso Not toType.IsNullableType Then 126Debug.Assert(nullableType.IsNullableType) 244If realParameterType.IsNullableType AndAlso Not method.Parameters(0).Type.IsNullableType AndAlso 245toType.IsNullableType AndAlso Not method.ReturnType.IsNullableType Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_Conversion.vb (5)
60Dim toIsNullable As Boolean = typeTo.IsNullableType 132Dim fromIsNullable As Boolean = typeFrom.IsNullableType 133Dim toIsNullable As Boolean = typeTo.IsNullableType 377If originalArgument.Type.IsNullableType = resultType.IsNullableType Then
Lowering\ExpressionLambdaRewriter\ExpressionLambdaRewriter_UnaryOperator.vb (3)
89Dim origArgTypeIsNullable As Boolean = origArgType.IsNullableType 156Debug.Assert(lambdaParameter.Type.IsNullableType) 189Debug.Assert(Not isLifted OrElse Not node.Call.Method.ReturnType.IsNullableType)
Lowering\LocalRewriter\LocalRewriter_BinaryOperators.vb (8)
242If (node.Left.Type IsNot Nothing AndAlso node.Left.Type.IsNullableType) OrElse 243(node.Right.Type IsNot Nothing AndAlso node.Right.Type.IsNullableType) Then 1322Debug.Assert(operand.Type.IsNullableType) 1393Debug.Assert(resultType.IsNullableType()) 1396Debug.Assert(left.Type.IsNullableType() AndAlso right.Type.IsNullableType(), "left and right must be nullable") 1496Debug.Assert(Not left.Type.IsNullableType) 1497Debug.Assert(Not right.Type.IsNullableType)
Lowering\LocalRewriter\LocalRewriter_ConditionalAccess.vb (3)
50If receiverType.IsNullableType() Then 129If needWhenNotNullPart AndAlso Not accessResultType.IsNullableType() AndAlso accessResultType.IsValueType Then 134whenNull = If(node.Type.IsNullableType(), NullableNull(node.Syntax, node.Type), factory.Null(node.Type))
Lowering\LocalRewriter\LocalRewriter_ConditionalExpressions.vb (4)
18If node.TestExpression.Type IsNot Nothing AndAlso node.TestExpression.Type.IsNullableType Then 135If Not testExpressionType.IsNullableOfBoolean AndAlso testExpressionType.IsNullableType Then 147If(testExpressionType.IsNullableType, 234If rewrittenLeft.Type.IsNullableType() AndAlso
Lowering\LocalRewriter\LocalRewriter_Conversion.vb (12)
53If (node.Type IsNot Nothing AndAlso node.Type.IsNullableType OrElse 54node.Operand.Type IsNot Nothing AndAlso node.Operand.Type.IsNullableType) AndAlso 400Debug.Assert(resultType.IsNullableType OrElse 401(operandType IsNot Nothing AndAlso operandType.IsNullableType), 439ElseIf operandType.IsNullableType Then 483If operandType.IsNullableType Then 484If resultType.IsNullableType Then 570If resultType.IsNullableType Then 607Debug.Assert(operand.Type.IsNullableType) 623Debug.Assert(resultType.IsNullableType, "lifted operator must have nullable type") 748ElseIf underlyingTypeFrom.IsNullableType OrElse underlyingTypeTo.IsNullableType Then
Lowering\LocalRewriter\LocalRewriter_ForTo.vb (4)
114If stepValue.Type.IsNullableType Then 578If controlVariable.Type.IsNullableType Then 596If controlVariable.Type.IsNullableType Then 732If controlVariable.Type.IsNullableType Then
Lowering\LocalRewriter\LocalRewriter_NullableHelpers.vb (10)
153Debug.Assert(expr.Type.IsNullableType) 210Debug.Assert(expr.Type.IsNullableType) 235Debug.Assert(expr.Type.IsNullableType) 262Debug.Assert(expr.Type.IsNullableType) 288Debug.Assert(nullableType.IsNullableType) 353Debug.Assert(expr.Type.IsNullableType) 370Debug.Assert(expr.Type.IsNullableType) 399Debug.Assert(Not left.Type.IsNullableType) 400Debug.Assert(Not right.Type.IsNullableType) 569If operand.Type.IsNullableType Then
Lowering\LocalRewriter\LocalRewriter_UnaryOperators.vb (3)
240Debug.Assert(resultType.IsNullableType()) 243Debug.Assert(operand.Type.IsNullableType, "operand must be nullable") 313Debug.Assert(Not operandValue.Type.IsNullableType)
Semantics\CompileTimeCalculations.vb (1)
686(targetType.IsNullableType() AndAlso targetType.GetNullableUnderlyingType().IsIntrinsicType()) Then
Semantics\Conversions.vb (6)
1249If destination.IsNullableType Then 1484(sourceType.IsNullableType() OrElse sourceType.CanContainUserDefinedOperators(useSiteInfo)) Then 3469Dim srcIsNullable As Boolean = source.IsNullableType() 3470Dim dstIsNullable As Boolean = destination.IsNullableType() 3482If srcUnderlying.Kind = SymbolKind.ErrorType OrElse Not srcUnderlying.IsValueType OrElse srcUnderlying.IsNullableType() Then 3490If dstUnderlying.Kind = SymbolKind.ErrorType OrElse Not dstUnderlying.IsValueType OrElse dstUnderlying.IsNullableType() Then
Semantics\Operators.vb (13)
1988If source.IsNullableType() AndAlso destination.IsNullableType() Then 2002Debug.Assert(Not bestMatch.Parameters(0).Type.IsNullableType()) 2003Debug.Assert(Not bestMatch.ReturnType.IsNullableType()) 2010Debug.Assert(Not bestMatch.Parameters(0).Type.IsNullableType()) 2011Debug.Assert(Not bestMatch.ReturnType.IsNullableType()) 2548If source.IsNullableType() AndAlso destination.IsNullableType() AndAlso 3202Dim isNullable1 As Boolean = type1.IsNullableType() 3213isNullable2 = type2.IsNullableType() 3266Return Not type.IsNullableType AndAlso type.IsValueType() AndAlso Not type.IsRestrictedType() 3270Return type.IsNullableType() ' Note, Dev11 has changed implementation of this function, I've taken this into account. 3293Debug.Assert(type.IsNullableType())
Semantics\OverloadResolution.vb (2)
2903sourceType.IsNullableType() AndAlso 2904Not targetType.IsNullableType()
Semantics\TypeInference\TypeArgumentInference.vb (2)
1396If(parameterType.IsNullableType(), argumentType.GetNullableUnderlyingTypeOrSelf(), argumentType). 1537ElseIf parameterTypeAsNamedType.IsNullableType() Then
Symbols\ConstraintsHelper.vb (2)
1021If (containingType IsNot Nothing) AndAlso containingType.IsNullableType() Then 1133Return type.IsNullableType()
Symbols\Source\SourceMemberContainerTypeSymbol.vb (1)
901If namedType.IsNullableType() Then
Symbols\TypeSymbolExtensions.vb (3)
20Return this.IsNullableType() AndAlso this.GetNullableUnderlyingType().IsBooleanType() 25Debug.Assert(type.IsNullableType) 33If type.IsNullableType() Then