Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 main() { | 5 main() { |
| 6 final f0 = 42; | 6 final f0 = 42; |
| 7 final f1; /// 01: compile-time error | 7 final f1; /// 01: compile-time error |
| 8 final int f2 = 87; | 8 final int f2 = 87; |
| 9 final int f3; /// 02: compile-time error | 9 final int f3; /// 02: compile-time error |
| 10 Expect.equals(42, f0); | 10 Expect.equals(42, f0); |
| (...skipping 20 matching lines...) Expand all Loading... | |
| 31 Expect.equals("Hello 42", B2); | 31 Expect.equals("Hello 42", B2); |
| 32 Expect.equals("42Hello", B3); /// 10: runtime error | 32 Expect.equals("42Hello", B3); /// 10: runtime error |
| 33 } | 33 } |
| 34 | 34 |
| 35 final F0 = 42; | 35 final F0 = 42; |
| 36 final F1; /// 03: continued | 36 final F1; /// 03: continued |
| 37 final int F2 = 87; | 37 final int F2 = 87; |
| 38 final int F3; /// 04: continued | 38 final int F3; /// 04: continued |
| 39 | 39 |
| 40 class Point { | 40 class Point { |
| 41 final x, y; | 41 final x, y; |
|
kasperl
2012/09/05 11:55:19
I guess these should really be const too.
kasperl
2012/09/05 11:55:57
Strike that. Final should be okay.
| |
| 42 final Point(this.x, this.y); | 42 const Point(this.x, this.y); |
| 43 operator +(int other) => x; | 43 operator +(int other) => x; |
| 44 } | 44 } |
| 45 | 45 |
| 46 // Check that compile time expressions can include invocations of | 46 // Check that compile time expressions can include invocations of |
| 47 // user-defined final constructors. | 47 // user-defined final constructors. |
| 48 final P0 = const Point(0, 0); | 48 final P0 = const Point(0, 0); |
| 49 final P1 = const Point(0, 0) + 1; | 49 final P1 = const Point(0, 0) + 1; |
| 50 final P2 = new Point(0, 0); | 50 final P2 = new Point(0, 0); |
| 51 final P3 = new Point(0, 0) + 1; | 51 final P3 = new Point(0, 0) + 1; |
| 52 | 52 |
| (...skipping 13 matching lines...) Expand all Loading... | |
| 66 : x = C0.X /// 09: continued | 66 : x = C0.X /// 09: continued |
| 67 ; | 67 ; |
| 68 final x = null; | 68 final x = null; |
| 69 } | 69 } |
| 70 | 70 |
| 71 // Check that sub-expressions of binary + are numeric. | 71 // Check that sub-expressions of binary + are numeric. |
| 72 final B0 = 42; | 72 final B0 = 42; |
| 73 final B1 = "Hello"; | 73 final B1 = "Hello"; |
| 74 final B2 = "$B1 $B0"; | 74 final B2 = "$B1 $B0"; |
| 75 final B3 = B0 + B1; /// 10: continued | 75 final B3 = B0 + B1; /// 10: continued |
| OLD | NEW |