39 references to MaybeNull
Microsoft.CodeAnalysis.CSharp (33)
FlowAnalysis\NullableWalker.cs (21)
750: NullableFlowState.MaybeNull; 909SetState(ref this.State, memberSlot, type.Type.IsPossiblyNullableReferenceTypeTypeParameter() ? NullableFlowState.MaybeDefault : NullableFlowState.MaybeNull); 1063SetState(ref this.State, memberSlot, NullableFlowState.MaybeNull); 2209case NullableFlowState.MaybeNull: 2572NullableFlowState value = isDefaultValue ? NullableFlowState.MaybeNull : fieldOrPropertyType.ToTypeWithState().State; 3596resultState = NullableFlowState.MaybeNull; 4438resultState = NullableFlowState.MaybeNull; // Delegate removal can produce null. 5011SetState(ref state, slot, NullableFlowState.MaybeNull); 8246resultState = targetType?.IsTypeParameterDisallowingAnnotationInCSharp8() == true ? NullableFlowState.MaybeDefault : NullableFlowState.MaybeNull; 8258case NullableFlowState.MaybeNull: 8270return (annotation == NullableAnnotation.Annotated) ? NullableFlowState.MaybeDefault : NullableFlowState.MaybeNull; 8277return NullableFlowState.MaybeNull; 8290if (state == NullableFlowState.MaybeNull) 8305return (annotation == NullableAnnotation.Annotated) ? NullableFlowState.MaybeDefault : NullableFlowState.MaybeNull; 8318if (state == NullableFlowState.MaybeNull) 8328if (state == NullableFlowState.MaybeNull) 10783node.IsAddition ? GetState(ref this.State, memberSlot).Meet(ResultType.State) : NullableFlowState.MaybeNull); 11530(true, false) => NullableFlowState.MaybeNull, 11558NullableFlowState.MaybeNull => (true, false), 11654var mayBeNull = GetValue(i) is NullableFlowState.MaybeNull or NullableFlowState.MaybeDefault; 11685NullableFlowState.MaybeNull => "?",
Symbols\ConstraintsHelper.cs (4)
1130return type.IsNullableTypeOrTypeParameter() ? NullableFlowState.MaybeNull : NullableFlowState.NotNull; 1135return type.IsTypeParameterDisallowingAnnotationInCSharp8() ? NullableFlowState.MaybeDefault : NullableFlowState.MaybeNull; 1157return result ?? NullableFlowState.MaybeNull; 1189return state == NullableFlowState.MaybeNull;
Symbols\NullableFlowStateExtensions.cs (3)
19/// The result is <see cref="NullableFlowState.MaybeNull"/> if either operand is that. 33CSharp.NullableFlowState.MaybeNull => CodeAnalysis.NullableFlowState.MaybeNull, 44CodeAnalysis.NullableFlowState.MaybeNull => CSharp.NullableFlowState.MaybeNull,
Symbols\TypeWithAnnotations.cs (3)
792return annotation switch { NullableAnnotation.Annotated => NullableFlowState.MaybeDefault, NullableAnnotation.NotAnnotated => NullableFlowState.MaybeNull, _ => NullableFlowState.NotNull }; 800return NullableFlowState.MaybeNull; 802return annotation switch { NullableAnnotation.Annotated => NullableFlowState.MaybeNull, _ => NullableFlowState.NotNull };
Symbols\TypeWithState.cs (2)
20public bool MayBeNull => State == NullableFlowState.MaybeNull; 36var state = defaultState != NullableFlowState.NotNull && type?.CanContainNull() != false ? NullableFlowState.MaybeNull : NullableFlowState.NotNull;
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (6)
Semantics\NullableReferenceTypesTests.cs (6)
123128var inputs = new[] { NullableFlowState.NotNull, NullableFlowState.MaybeNull }; 123134{ NullableFlowState.NotNull, NullableFlowState.MaybeNull }, 123135{ NullableFlowState.MaybeNull, NullableFlowState.MaybeNull }, 123160var inputs = new[] { NullableFlowState.NotNull, NullableFlowState.MaybeNull }; 123166{ NullableFlowState.NotNull, NullableFlowState.MaybeNull },