Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 library named_constructor_test; | |
|
ngeoffray
2013/10/21 13:28:56
Missing copyright.
Johnni Winther
2013/10/22 06:25:54
Done.
| |
| 2 | |
| 3 import 'package:expect/expect.dart'; | |
| 4 import 'named_constructor_lib.dart' as prefix; | |
| 5 | |
| 6 class Class<T> { | |
| 7 final int value; | |
| 8 Class() : value = 0; | |
| 9 Class.named() : value = 1; | |
| 10 } | |
| 11 | |
| 12 void main() { | |
| 13 Expect.equals(0, new Class().value); | |
| 14 Expect.equals(0, new Class<int>().value); | |
| 15 | |
| 16 Expect.equals(1, new Class.named().value); | |
| 17 Expect.equals(1, new Class<int>.named().value); | |
| 18 // 'Class.named' is not a type: | |
| 19 Expect.equals(1, new Class.named<int>().value); /// 01: runtime error | |
| 20 // 'Class<int>.named<int>' doesn't fit the grammar syntax T.id: | |
| 21 Expect.equals(1, new Class<int>.named<int>().value); /// 02: compile-time erro r | |
| 22 | |
| 23 Expect.equals(2, new prefix.Class().value); | |
| 24 // 'prefix' is not a type: | |
| 25 Expect.equals(2, new prefix<int>.Class().value); /// 03: runtime error | |
| 26 Expect.equals(2, new prefix.Class<int>().value); | |
| 27 // 'prefix<int>.Class<int>' doesn't fit the grammar syntax T.id: | |
| 28 Expect.equals(2, new prefix<int>.Class<int>().value); /// 04: compile-time err or | |
| 29 | |
| 30 Expect.equals(3, new prefix.Class.named().value); | |
| 31 // 'prefix<int>.Class.named' doesn't fit the grammar syntax T.id: | |
| 32 Expect.equals(3, new prefix<int>.Class.named().value); /// 05: compile-time er ror | |
| 33 // 'prefix.Class<int>.named' doesn't fit the grammar syntax T.id: | |
| 34 Expect.equals(3, new prefix.Class<int>.named().value); | |
| 35 // 'prefix.Class.named<int>' doesn't fit the grammar syntax T.id: | |
| 36 Expect.equals(3, new prefix.Class.named<int>().value); /// 06: compile-time er ror | |
| 37 // 'prefix<int>.Class<int>' doesn't fit the grammar syntax T.id: | |
| 38 Expect.equals(3, new prefix<int>.Class<int>.named().value); /// 07: compile-ti me error | |
| 39 // 'prefix<int>.Class.named<int>' doesn't fit the grammar syntax T.id: | |
| 40 Expect.equals(3, new prefix<int>.Class.named<int>().value); /// 08: compile-ti me error | |
| 41 // 'prefix.Class<int>.named<int>' doesn't fit the grammar syntax T.id: | |
| 42 Expect.equals(3, new prefix.Class<int>.named<int>().value); /// 09: compile-ti me error | |
| 43 // 'prefix<int>.Class<int>.named<int>' doesn't fit the grammar syntax T.id: | |
| 44 Expect.equals(3, new prefix<int>.Class<int>.named<int>().value); /// 10: compi le-time error | |
| 45 } | |
| OLD | NEW |