mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 00:19:48 +00:00
b955271e51
Change-Id: I8d41ad649c83cd97253006693a0cf3676de418e9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145542 Commit-Queue: Bob Nystrom <rnystrom@google.com> Reviewed-by: Erik Ernst <eernst@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com>
332 lines
12 KiB
Dart
332 lines
12 KiB
Dart
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
// Dart test program for constructors and initializers.
|
|
|
|
// Check function subtyping of simple function types.
|
|
|
|
import 'package:expect/expect.dart';
|
|
|
|
typedef Args0();
|
|
typedef Args1(Never a);
|
|
typedef Args2(Never a, Never b);
|
|
typedef Args3(Never a, Never b, Never c);
|
|
typedef Args4(Never a, Never b, Never c, Never d);
|
|
typedef Args5(Never a, Never b, Never c, Never d, Never e);
|
|
typedef Args6(Never a, Never b, Never c, Never d, Never e, Never f);
|
|
typedef Args7(Never a, Never b, Never c, Never d, Never e, Never f, Never g);
|
|
typedef Args8(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h);
|
|
typedef Args9(
|
|
Never a, Never b, Never c, Never d, Never e, Never f, Never g, Never h,
|
|
Never i);
|
|
typedef Args10(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j);
|
|
typedef Args11(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j, Never k);
|
|
typedef Args12(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j, Never k, Never l);
|
|
typedef Args13(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j, Never k, Never l, Never m);
|
|
typedef Args14(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j, Never k, Never l, Never m, Never n);
|
|
typedef Args15(Never a, Never b, Never c, Never d, Never e, Never f, Never g,
|
|
Never h, Never i, Never j, Never k, Never l, Never m, Never n, Never o);
|
|
|
|
void args0() {}
|
|
void args1(int a) {}
|
|
void args2(int a, int b) {}
|
|
void args3(int a, int b, int c) {}
|
|
void args4(int a, int b, int c, int d) {}
|
|
void args5(int a, int b, int c, int d, int e) {}
|
|
void args6(int a, int b, int c, int d, int e, int f) {}
|
|
void args7(int a, int b, int c, int d, int e, int f, int g) {}
|
|
void args8(int a, int b, int c, int d, int e, int f, int g, int h) {}
|
|
void args9(int a, int b, int c, int d, int e, int f, int g, int h, int i) {}
|
|
void args10(
|
|
int a, int b, int c, int d, int e, int f, int g, int h, int i, int j) {}
|
|
void args11(int a, int b, int c, int d, int e, int f, int g, int h, int i,
|
|
int j, int k) {}
|
|
void args12(int a, int b, int c, int d, int e, int f, int g, int h, int i,
|
|
int j, int k, int l) {}
|
|
void args13(int a, int b, int c, int d, int e, int f, int g, int h, int i,
|
|
int j, int k, int l, int m) {}
|
|
void args14(int a, int b, int c, int d, int e, int f, int g, int h, int i,
|
|
int j, int k, int l, int m, int n) {}
|
|
void args15(int a, int b, int c, int d, int e, int f, int g, int h, int i,
|
|
int j, int k, int l, int m, int n, int o) {}
|
|
|
|
main() {
|
|
Expect.isTrue(args0 is Args0);
|
|
Expect.isFalse(args0 is Args1);
|
|
Expect.isFalse(args0 is Args2);
|
|
Expect.isFalse(args0 is Args3);
|
|
Expect.isFalse(args0 is Args4);
|
|
Expect.isFalse(args0 is Args5);
|
|
Expect.isFalse(args0 is Args6);
|
|
Expect.isFalse(args0 is Args7);
|
|
Expect.isFalse(args0 is Args8);
|
|
Expect.isFalse(args0 is Args9);
|
|
Expect.isFalse(args0 is Args10);
|
|
Expect.isFalse(args0 is Args11);
|
|
Expect.isFalse(args0 is Args12);
|
|
Expect.isFalse(args0 is Args13);
|
|
Expect.isFalse(args0 is Args14);
|
|
Expect.isFalse(args0 is Args15);
|
|
|
|
Expect.isFalse(args1 is Args0);
|
|
Expect.isTrue(args1 is Args1);
|
|
Expect.isFalse(args1 is Args2);
|
|
Expect.isFalse(args1 is Args3);
|
|
Expect.isFalse(args1 is Args4);
|
|
Expect.isFalse(args1 is Args5);
|
|
Expect.isFalse(args1 is Args6);
|
|
Expect.isFalse(args1 is Args7);
|
|
Expect.isFalse(args1 is Args8);
|
|
Expect.isFalse(args1 is Args9);
|
|
Expect.isFalse(args1 is Args10);
|
|
Expect.isFalse(args1 is Args11);
|
|
Expect.isFalse(args1 is Args12);
|
|
Expect.isFalse(args1 is Args13);
|
|
Expect.isFalse(args1 is Args14);
|
|
Expect.isFalse(args1 is Args15);
|
|
|
|
Expect.isFalse(args2 is Args0);
|
|
Expect.isFalse(args2 is Args1);
|
|
Expect.isTrue(args2 is Args2);
|
|
Expect.isFalse(args2 is Args3);
|
|
Expect.isFalse(args2 is Args4);
|
|
Expect.isFalse(args2 is Args5);
|
|
Expect.isFalse(args2 is Args6);
|
|
Expect.isFalse(args2 is Args7);
|
|
Expect.isFalse(args2 is Args8);
|
|
Expect.isFalse(args2 is Args9);
|
|
Expect.isFalse(args2 is Args10);
|
|
Expect.isFalse(args2 is Args11);
|
|
Expect.isFalse(args2 is Args12);
|
|
Expect.isFalse(args2 is Args13);
|
|
Expect.isFalse(args2 is Args14);
|
|
Expect.isFalse(args2 is Args15);
|
|
|
|
Expect.isFalse(args3 is Args0);
|
|
Expect.isFalse(args3 is Args1);
|
|
Expect.isFalse(args3 is Args2);
|
|
Expect.isTrue(args3 is Args3);
|
|
Expect.isFalse(args3 is Args4);
|
|
Expect.isFalse(args3 is Args5);
|
|
Expect.isFalse(args3 is Args6);
|
|
Expect.isFalse(args3 is Args7);
|
|
Expect.isFalse(args3 is Args8);
|
|
Expect.isFalse(args3 is Args9);
|
|
Expect.isFalse(args3 is Args10);
|
|
Expect.isFalse(args3 is Args11);
|
|
Expect.isFalse(args3 is Args12);
|
|
Expect.isFalse(args3 is Args13);
|
|
Expect.isFalse(args3 is Args14);
|
|
Expect.isFalse(args3 is Args15);
|
|
|
|
Expect.isFalse(args4 is Args0);
|
|
Expect.isFalse(args4 is Args1);
|
|
Expect.isFalse(args4 is Args2);
|
|
Expect.isFalse(args4 is Args3);
|
|
Expect.isTrue(args4 is Args4);
|
|
Expect.isFalse(args4 is Args5);
|
|
Expect.isFalse(args4 is Args6);
|
|
Expect.isFalse(args4 is Args7);
|
|
Expect.isFalse(args4 is Args8);
|
|
Expect.isFalse(args4 is Args9);
|
|
Expect.isFalse(args4 is Args10);
|
|
Expect.isFalse(args4 is Args11);
|
|
Expect.isFalse(args4 is Args12);
|
|
Expect.isFalse(args4 is Args13);
|
|
Expect.isFalse(args4 is Args14);
|
|
Expect.isFalse(args4 is Args15);
|
|
|
|
Expect.isFalse(args5 is Args0);
|
|
Expect.isFalse(args5 is Args1);
|
|
Expect.isFalse(args5 is Args2);
|
|
Expect.isFalse(args5 is Args3);
|
|
Expect.isFalse(args5 is Args4);
|
|
Expect.isTrue(args5 is Args5);
|
|
Expect.isFalse(args5 is Args6);
|
|
Expect.isFalse(args5 is Args7);
|
|
Expect.isFalse(args5 is Args8);
|
|
Expect.isFalse(args5 is Args9);
|
|
Expect.isFalse(args5 is Args10);
|
|
Expect.isFalse(args5 is Args11);
|
|
Expect.isFalse(args5 is Args12);
|
|
Expect.isFalse(args5 is Args13);
|
|
Expect.isFalse(args5 is Args14);
|
|
Expect.isFalse(args5 is Args15);
|
|
|
|
Expect.isFalse(args6 is Args0);
|
|
Expect.isFalse(args6 is Args1);
|
|
Expect.isFalse(args6 is Args2);
|
|
Expect.isFalse(args6 is Args3);
|
|
Expect.isFalse(args6 is Args4);
|
|
Expect.isFalse(args6 is Args5);
|
|
Expect.isTrue(args6 is Args6);
|
|
Expect.isFalse(args6 is Args7);
|
|
Expect.isFalse(args6 is Args8);
|
|
Expect.isFalse(args6 is Args9);
|
|
Expect.isFalse(args6 is Args10);
|
|
Expect.isFalse(args6 is Args11);
|
|
Expect.isFalse(args6 is Args12);
|
|
Expect.isFalse(args6 is Args13);
|
|
Expect.isFalse(args6 is Args14);
|
|
Expect.isFalse(args6 is Args15);
|
|
|
|
Expect.isFalse(args7 is Args0);
|
|
Expect.isFalse(args7 is Args1);
|
|
Expect.isFalse(args7 is Args2);
|
|
Expect.isFalse(args7 is Args3);
|
|
Expect.isFalse(args7 is Args4);
|
|
Expect.isFalse(args7 is Args5);
|
|
Expect.isFalse(args7 is Args6);
|
|
Expect.isTrue(args7 is Args7);
|
|
Expect.isFalse(args7 is Args8);
|
|
Expect.isFalse(args7 is Args9);
|
|
Expect.isFalse(args7 is Args10);
|
|
Expect.isFalse(args7 is Args11);
|
|
Expect.isFalse(args7 is Args12);
|
|
Expect.isFalse(args7 is Args13);
|
|
Expect.isFalse(args7 is Args14);
|
|
Expect.isFalse(args7 is Args15);
|
|
|
|
Expect.isFalse(args8 is Args0);
|
|
Expect.isFalse(args8 is Args1);
|
|
Expect.isFalse(args8 is Args2);
|
|
Expect.isFalse(args8 is Args3);
|
|
Expect.isFalse(args8 is Args4);
|
|
Expect.isFalse(args8 is Args5);
|
|
Expect.isFalse(args8 is Args6);
|
|
Expect.isFalse(args8 is Args7);
|
|
Expect.isTrue(args8 is Args8);
|
|
Expect.isFalse(args8 is Args9);
|
|
Expect.isFalse(args8 is Args10);
|
|
Expect.isFalse(args8 is Args11);
|
|
Expect.isFalse(args8 is Args12);
|
|
Expect.isFalse(args8 is Args13);
|
|
Expect.isFalse(args8 is Args14);
|
|
Expect.isFalse(args8 is Args15);
|
|
|
|
Expect.isFalse(args9 is Args0);
|
|
Expect.isFalse(args9 is Args1);
|
|
Expect.isFalse(args9 is Args2);
|
|
Expect.isFalse(args9 is Args3);
|
|
Expect.isFalse(args9 is Args4);
|
|
Expect.isFalse(args9 is Args5);
|
|
Expect.isFalse(args9 is Args6);
|
|
Expect.isFalse(args9 is Args7);
|
|
Expect.isFalse(args9 is Args8);
|
|
Expect.isTrue(args9 is Args9);
|
|
Expect.isFalse(args9 is Args10);
|
|
Expect.isFalse(args9 is Args11);
|
|
Expect.isFalse(args9 is Args12);
|
|
Expect.isFalse(args9 is Args13);
|
|
Expect.isFalse(args9 is Args14);
|
|
Expect.isFalse(args9 is Args15);
|
|
|
|
Expect.isFalse(args10 is Args0);
|
|
Expect.isFalse(args10 is Args1);
|
|
Expect.isFalse(args10 is Args2);
|
|
Expect.isFalse(args10 is Args3);
|
|
Expect.isFalse(args10 is Args4);
|
|
Expect.isFalse(args10 is Args5);
|
|
Expect.isFalse(args10 is Args6);
|
|
Expect.isFalse(args10 is Args7);
|
|
Expect.isFalse(args10 is Args8);
|
|
Expect.isFalse(args10 is Args9);
|
|
Expect.isTrue(args10 is Args10);
|
|
Expect.isFalse(args10 is Args11);
|
|
Expect.isFalse(args10 is Args12);
|
|
Expect.isFalse(args10 is Args13);
|
|
Expect.isFalse(args10 is Args14);
|
|
Expect.isFalse(args10 is Args15);
|
|
|
|
Expect.isFalse(args11 is Args0);
|
|
Expect.isFalse(args11 is Args1);
|
|
Expect.isFalse(args11 is Args2);
|
|
Expect.isFalse(args11 is Args3);
|
|
Expect.isFalse(args11 is Args4);
|
|
Expect.isFalse(args11 is Args5);
|
|
Expect.isFalse(args11 is Args6);
|
|
Expect.isFalse(args11 is Args7);
|
|
Expect.isFalse(args11 is Args8);
|
|
Expect.isFalse(args11 is Args9);
|
|
Expect.isFalse(args11 is Args10);
|
|
Expect.isTrue(args11 is Args11);
|
|
Expect.isFalse(args11 is Args12);
|
|
Expect.isFalse(args11 is Args13);
|
|
Expect.isFalse(args11 is Args14);
|
|
Expect.isFalse(args11 is Args15);
|
|
|
|
Expect.isFalse(args12 is Args0);
|
|
Expect.isFalse(args12 is Args1);
|
|
Expect.isFalse(args12 is Args2);
|
|
Expect.isFalse(args12 is Args3);
|
|
Expect.isFalse(args12 is Args4);
|
|
Expect.isFalse(args12 is Args5);
|
|
Expect.isFalse(args12 is Args6);
|
|
Expect.isFalse(args12 is Args7);
|
|
Expect.isFalse(args12 is Args8);
|
|
Expect.isFalse(args12 is Args9);
|
|
Expect.isFalse(args12 is Args10);
|
|
Expect.isFalse(args12 is Args11);
|
|
Expect.isTrue(args12 is Args12);
|
|
Expect.isFalse(args12 is Args13);
|
|
Expect.isFalse(args12 is Args14);
|
|
Expect.isFalse(args12 is Args15);
|
|
|
|
Expect.isFalse(args13 is Args0);
|
|
Expect.isFalse(args13 is Args1);
|
|
Expect.isFalse(args13 is Args2);
|
|
Expect.isFalse(args13 is Args3);
|
|
Expect.isFalse(args13 is Args4);
|
|
Expect.isFalse(args13 is Args5);
|
|
Expect.isFalse(args13 is Args6);
|
|
Expect.isFalse(args13 is Args7);
|
|
Expect.isFalse(args13 is Args8);
|
|
Expect.isFalse(args13 is Args9);
|
|
Expect.isFalse(args13 is Args10);
|
|
Expect.isFalse(args13 is Args11);
|
|
Expect.isFalse(args13 is Args12);
|
|
Expect.isTrue(args13 is Args13);
|
|
Expect.isFalse(args13 is Args14);
|
|
Expect.isFalse(args13 is Args15);
|
|
|
|
Expect.isFalse(args14 is Args0);
|
|
Expect.isFalse(args14 is Args1);
|
|
Expect.isFalse(args14 is Args2);
|
|
Expect.isFalse(args14 is Args3);
|
|
Expect.isFalse(args14 is Args4);
|
|
Expect.isFalse(args14 is Args5);
|
|
Expect.isFalse(args14 is Args6);
|
|
Expect.isFalse(args14 is Args7);
|
|
Expect.isFalse(args14 is Args8);
|
|
Expect.isFalse(args14 is Args9);
|
|
Expect.isFalse(args14 is Args10);
|
|
Expect.isFalse(args14 is Args11);
|
|
Expect.isFalse(args14 is Args12);
|
|
Expect.isFalse(args14 is Args13);
|
|
Expect.isTrue(args14 is Args14);
|
|
Expect.isFalse(args14 is Args15);
|
|
|
|
Expect.isFalse(args15 is Args0);
|
|
Expect.isFalse(args15 is Args1);
|
|
Expect.isFalse(args15 is Args2);
|
|
Expect.isFalse(args15 is Args3);
|
|
Expect.isFalse(args15 is Args4);
|
|
Expect.isFalse(args15 is Args5);
|
|
Expect.isFalse(args15 is Args6);
|
|
Expect.isFalse(args15 is Args7);
|
|
Expect.isFalse(args15 is Args8);
|
|
Expect.isFalse(args15 is Args9);
|
|
Expect.isFalse(args15 is Args10);
|
|
Expect.isFalse(args15 is Args11);
|
|
Expect.isFalse(args15 is Args12);
|
|
Expect.isFalse(args15 is Args13);
|
|
Expect.isFalse(args15 is Args14);
|
|
Expect.isTrue(args15 is Args15);
|
|
}
|