Type? _capturedTypeArgument; | |
X captureTypeArgument<X>() {} | |
class A<X extends A<X>> {} | |
typedef C<X extends A<X>> = A<X>; | |
void topLevel1<X extends A<X>>(A<X> Function() g) => g(); | |
void topLevel2<X extends C<X>>(C<X> Function() g) => g(); | |
class Class { | |
void instance1<X extends A<X>>(A<X> Function() g) => g(); | |
void instance2<X extends C<X>>(C<X> Function() g) => g(); | |
void test() {} | |
} | |
class Subclass extends Class { | |
void test() {} | |
} | |
main() {} |