blob: dc4fa3f65482d92551300f21e8a76c57fb0c49f8 [file] [log] [blame]
// Copyright (c) 2019, 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.
/**
* @assertion The effect of a type alias of the form typedef id = T; declared in
* a library L is to introduce the name id into the scope of L, bound to the
* type T .
* @description Checks that type alias of the form typedef id = T; introduces
* the name id into the scope of L, bound to the type T .
* @author sgrekhov@unipro.ru
*/
// SharedOptions=--enable-experiment=nonfunction-type-aliases
import "../../../Utils/expect.dart";
import "scope.lib.dart";
class X {
static void s() {
AAlias aa = new A();
Expect.isTrue(aa is A);
Expect.isTrue(aa is AAlias);
CAlias<String> ca = new C<String>();
Expect.isTrue(ca is C<String>);
Expect.isTrue(ca is CAlias<String>);
}
void m() {
AAlias aa = new A();
Expect.isTrue(aa is A);
Expect.isTrue(aa is AAlias);
CAlias<String> ca = new C<String>();
Expect.isTrue(ca is C<String>);
Expect.isTrue(ca is CAlias<String>);
}
}
test() {
AAlias aa = new A();
Expect.isTrue(aa is A);
Expect.isTrue(aa is AAlias);
CAlias<String> ca = new C<String>();
Expect.isTrue(ca is C<String>);
Expect.isTrue(ca is CAlias<String>);
}
main() {
AAlias aa = new A();
Expect.isTrue(aa is A);
Expect.isTrue(aa is AAlias);
CAlias<String> ca = new C<String>();
Expect.isTrue(ca is C<String>);
Expect.isTrue(ca is CAlias<String>);
test();
X.s();
new X().m();
}