1 /* 2 * Copyright 2020 The JSpecify Authors. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 import org.jspecify.annotations.NullMarked; 17 import org.jspecify.annotations.Nullable; 18 import org.jspecify.annotations.NullnessUnspecified; 19 20 @NullMarked 21 class NullCheckTypeVariableUnspecBound<T extends @NullnessUnspecified Object> { x0(T o)22 Object x0(T o) { 23 if (o != null) { 24 return o; 25 } else { 26 // jspecify_nullness_mismatch 27 return o; 28 } 29 } 30 x1(@ullnessUnspecified T o)31 Object x1(@NullnessUnspecified T o) { 32 if (o != null) { 33 return o; 34 } else { 35 // jspecify_nullness_mismatch 36 return o; 37 } 38 } 39 x2(@ullable T o)40 Object x2(@Nullable T o) { 41 if (o != null) { 42 return o; 43 } else { 44 // jspecify_nullness_mismatch 45 return o; 46 } 47 } 48 x3(T o)49 Object x3(T o) { 50 if (o == null) { 51 // jspecify_nullness_mismatch 52 return o; 53 } else { 54 return o; 55 } 56 } 57 x4(@ullnessUnspecified T o)58 Object x4(@NullnessUnspecified T o) { 59 if (o == null) { 60 // jspecify_nullness_mismatch 61 return o; 62 } else { 63 return o; 64 } 65 } 66 x5(@ullable T o)67 Object x5(@Nullable T o) { 68 if (o == null) { 69 // jspecify_nullness_mismatch 70 return o; 71 } else { 72 return o; 73 } 74 } 75 } 76