blob: c0534c16a3d8b11fe8c387003a4f57905c2c9231 [file] [log] [blame]
abstract class Implement1 {
void method(covariant int? a, int? b, int? c, int? d, int? e) {}
}
class C extends Object with M1, M2 {}
class Direct {
void named({covariant int? a, int? b, covariant int? c, int? d}) {}
void optional([covariant int? a, int? b, covariant int? c, int? d]) {}
void positional(covariant int? a, int? b, covariant int? c, int? d, int? e) {}
}
class Implement2 {
void method(int? a, covariant int? b, int? c, int? d, int? e) {}
}
class Implement3 {
void method(int? a, int? b, covariant int? c, int? d, int? e) {}
}
class Implement4 implements Implement3 {
void method(int? a, int? b, int? c, covariant int? d, int? e) {}
}
class Implement5 implements Implement1, Implement2, Implement4 {
void method(int? a, int? b, int? c, int? d, covariant int? e) {}
}
class Inherited extends Direct {}
class Interface1 {
void method(covariant int? a, int? b, int? c, int? d, int? e) {}
}
class Interface2 {
void method(int? a, covariant int? b, int? c, int? d, int? e) {}
}
class M1 {
method(covariant int? a, int? b) {}
}
class M2 {
method(int? a, covariant int? b) {}
}
class Mixed extends Superclass
with Mixin1, Mixin2
implements Interface1, Interface2 {}
class Mixin1 {
void method(int? a, int? b, covariant int? c, int? d, int? e) {}
}
class Mixin2 {
void method(int? a, int? b, int? c, covariant int? d, int? e) {}
}
class Override1 {
void method(covariant int? a, int? b, int? c, int? d, int? e) {}
}
class Override2 extends Override1 {
void method(int? a, int? b, covariant int? c, int? d, int? e) {}
}
class Override3 extends Override2 {
void method(int? a, int? b, int? c, int? d, int? e) {}
}
class Superclass {
void method(int? a, int? b, int? c, int? d, covariant int? e) {}
}
typedef void TakeInts(int? a, int? b, int? c, int? d, int? e);
typedef void TakeNamedInts({int? a, int? b, int? c, int? d});
typedef void TakeNamedObjectsAndInts({Object? a, int? b, Object? c, int? d});
typedef void TakeObjects(Object? a, Object? b, Object? c, Object? d, Object? e);
typedef void TakeObjectsAndInts(Object? a, int? b, Object? c, int? d, int? e);
typedef void TakeOptionalInts([int? a, int? b, int? c, int? d]);
typedef void TakeOptionalObjectsAndInts([Object? a, int? b, Object? c, int? d]);
void isTrue(bool value) {}
void main() {}
void testDirect() {}
void testImplemented() {}
void testInherited() {}
void testMixed() {}
void testOverridden() {}