• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 TypeVariableUnspecToSelfUnspec<
22     Never1T,
23     ChildOfNever1T extends Never1T,
24     UnspecChildOfNever1T extends @NullnessUnspecified Never1T,
25     NullChildOfNever1T extends @Nullable Never1T,
26     //
27     Never2T extends Object,
28     ChildOfNever2T extends Never2T,
29     UnspecChildOfNever2T extends @NullnessUnspecified Never2T,
30     NullChildOfNever2T extends @Nullable Never2T,
31     //
32     UnspecT extends @NullnessUnspecified Object,
33     ChildOfUnspecT extends UnspecT,
34     UnspecChildOfUnspecT extends @NullnessUnspecified UnspecT,
35     NullChildOfUnspecT extends @Nullable UnspecT,
36     //
37     ParametricT extends @Nullable Object,
38     ChildOfParametricT extends ParametricT,
39     UnspecChildOfParametricT extends @NullnessUnspecified ParametricT,
40     NullChildOfParametricT extends @Nullable ParametricT,
41     //
42     UnusedT> {
x0(@ullnessUnspecified Never1T x)43   @NullnessUnspecified Never1T x0(@NullnessUnspecified Never1T x) {
44     // jspecify_nullness_not_enough_information
45     return x;
46   }
47 
x1(@ullnessUnspecified ChildOfNever1T x)48   @NullnessUnspecified ChildOfNever1T x1(@NullnessUnspecified ChildOfNever1T x) {
49     // jspecify_nullness_not_enough_information
50     return x;
51   }
52 
x2(@ullnessUnspecified UnspecChildOfNever1T x)53   @NullnessUnspecified UnspecChildOfNever1T x2(@NullnessUnspecified UnspecChildOfNever1T x) {
54     // jspecify_nullness_not_enough_information
55     return x;
56   }
57 
x3(@ullnessUnspecified NullChildOfNever1T x)58   @NullnessUnspecified NullChildOfNever1T x3(@NullnessUnspecified NullChildOfNever1T x) {
59     // jspecify_nullness_not_enough_information
60     return x;
61   }
62 
x4(@ullnessUnspecified Never2T x)63   @NullnessUnspecified Never2T x4(@NullnessUnspecified Never2T x) {
64     // jspecify_nullness_not_enough_information
65     return x;
66   }
67 
x5(@ullnessUnspecified ChildOfNever2T x)68   @NullnessUnspecified ChildOfNever2T x5(@NullnessUnspecified ChildOfNever2T x) {
69     // jspecify_nullness_not_enough_information
70     return x;
71   }
72 
x6(@ullnessUnspecified UnspecChildOfNever2T x)73   @NullnessUnspecified UnspecChildOfNever2T x6(@NullnessUnspecified UnspecChildOfNever2T x) {
74     // jspecify_nullness_not_enough_information
75     return x;
76   }
77 
x7(@ullnessUnspecified NullChildOfNever2T x)78   @NullnessUnspecified NullChildOfNever2T x7(@NullnessUnspecified NullChildOfNever2T x) {
79     // jspecify_nullness_not_enough_information
80     return x;
81   }
82 
x8(@ullnessUnspecified UnspecT x)83   @NullnessUnspecified UnspecT x8(@NullnessUnspecified UnspecT x) {
84     // jspecify_nullness_not_enough_information
85     return x;
86   }
87 
x9(@ullnessUnspecified ChildOfUnspecT x)88   @NullnessUnspecified ChildOfUnspecT x9(@NullnessUnspecified ChildOfUnspecT x) {
89     // jspecify_nullness_not_enough_information
90     return x;
91   }
92 
x10(@ullnessUnspecified UnspecChildOfUnspecT x)93   @NullnessUnspecified UnspecChildOfUnspecT x10(@NullnessUnspecified UnspecChildOfUnspecT x) {
94     // jspecify_nullness_not_enough_information
95     return x;
96   }
97 
x11(@ullnessUnspecified NullChildOfUnspecT x)98   @NullnessUnspecified NullChildOfUnspecT x11(@NullnessUnspecified NullChildOfUnspecT x) {
99     // jspecify_nullness_not_enough_information
100     return x;
101   }
102 
x12(@ullnessUnspecified ParametricT x)103   @NullnessUnspecified ParametricT x12(@NullnessUnspecified ParametricT x) {
104     // jspecify_nullness_not_enough_information
105     return x;
106   }
107 
x13(@ullnessUnspecified ChildOfParametricT x)108   @NullnessUnspecified ChildOfParametricT x13(@NullnessUnspecified ChildOfParametricT x) {
109     // jspecify_nullness_not_enough_information
110     return x;
111   }
112 
x14(@ullnessUnspecified UnspecChildOfParametricT x)113   @NullnessUnspecified UnspecChildOfParametricT x14(@NullnessUnspecified UnspecChildOfParametricT x) {
114     // jspecify_nullness_not_enough_information
115     return x;
116   }
117 
x15(@ullnessUnspecified NullChildOfParametricT x)118   @NullnessUnspecified NullChildOfParametricT x15(@NullnessUnspecified NullChildOfParametricT x) {
119     // jspecify_nullness_not_enough_information
120     return x;
121   }
122 }
123