OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 import "package:expect/expect.dart"; | |
6 | |
7 class M1 { foo() => 42; } | 5 class M1 { foo() => 42; } |
8 typedef M2 = Object with M1; | 6 typedef M2 = Object with M1; |
9 | 7 |
10 class S { } | 8 class S { } |
11 typedef C = S with M2; | 9 typedef C = S with M2; |
12 | 10 |
13 main() { | 11 main() { |
14 var c = new C(); | 12 var c = new C(); |
15 Expect.isTrue(c is S); | 13 Expect.isTrue(c is S); |
16 Expect.isTrue(c is M1); | 14 Expect.isTrue(c is M1); |
17 Expect.isTrue(c is M2); | 15 Expect.isTrue(c is M2); |
18 Expect.isTrue(c is C); | 16 Expect.isTrue(c is C); |
19 Expect.equals(42, c.foo()); | 17 Expect.equals(42, c.foo()); |
20 } | 18 } |
OLD | NEW |