blob: 96811f24207382666c6a531fc08b0ee0a5ad8a41 [file] [log] [blame]
class C {
String call() => 'call from C';
}
class D {
Function get getter1 => Ext(C());
Function get getter2 {}
Function get getter3 => Ext2(C());
Function get getter4 {}
Function method1<T extends C>(T c) {}
Function method2<T extends C>(T c) {}
Function method3<T extends Ext>(Ext e) {}
Function method4<T extends Ext2>(Ext2 e) {}
Function method5<T>(T c) {}
Function method6<T, S extends C>(T c) {}
}
class E {
String get getter1 => Ext(C())();
String get getter2 {}
String get getter3 => Ext2(C())();
String get getter4 {}
String method1<T extends C>(T c) {}
String method2<T extends C>(T c) {}
String method3<T extends Ext>(Ext e) {}
String method4<T extends Ext2>(Ext2 e) {}
String method5<T>(T c) {}
String method6<T, S extends C>(T c) {}
}
extension type Ext(Function it) {
String call() => 'call from Ext: ${it()}';
}
extension type Ext2(C c) implements C {}
void main() {}