@@ -220,3 +220,33 @@ class StringList extends StringList_ { }
220
220
221
221
/** A list of aliases in an import statement */
222
222
class AliasList extends AliasList_ { }
223
+
224
+ /** A generic type parameter, as seen in function, class, and type alias definitions. */
225
+ class TypeParameter extends TypeParameter_ { }
226
+
227
+ /** A list of type parameters */
228
+ class TypeParameterList extends TypeParameterList_ { }
229
+
230
+ /** A parent of a `TypeParameterList`. Internal implementation class. */
231
+ class TypeParameterListParent extends TypeParameterListParent_ { }
232
+
233
+ /** A type alias statement, such as `type T[T1,T2] = T3`. */
234
+ class TypeAlias extends TypeAlias_ , Stmt {
235
+ /** Gets the name of this type alias. */
236
+ override Name getName ( ) { result = super .getName ( ) }
237
+ }
238
+
239
+ /** A type variable, with an optional bound, such as `T1` and `T2` in `type T[T1, T2: T3] = T4`. */
240
+ class TypeVar extends TypeVar_ , TypeParameter {
241
+ override Name getName ( ) { result = super .getName ( ) }
242
+ }
243
+
244
+ /** A type var tuple parameter, such as `*T1` in `type T[*T1] = T2`. */
245
+ class TypeVarTuple extends TypeVarTuple_ , TypeParameter {
246
+ override Name getName ( ) { result = super .getName ( ) }
247
+ }
248
+
249
+ /** A param spec parameter, such as `**T1` in `type T[**T1] = T2`. */
250
+ class ParamSpec extends ParamSpec_ , TypeParameter {
251
+ override Name getName ( ) { result = super .getName ( ) }
252
+ }
0 commit comments