OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 // Dart test program for redirection constructors. | 4 // Dart test program for redirection constructors. |
5 | 5 |
6 import "package:expect/expect.dart"; | |
7 | |
8 class A { | 6 class A { |
9 var x; | 7 var x; |
10 A(this.x) {} | 8 A(this.x) {} |
11 A.named(x, int y) : this(x + y); | 9 A.named(x, int y) : this(x + y); |
12 A.named2(int x, int y, z) : this.named(staticFun(x, y), z); | 10 A.named2(int x, int y, z) : this.named(staticFun(x, y), z); |
13 | 11 |
14 // The following is a bit tricky. It is a compile-time error to | 12 // The following is a bit tricky. It is a compile-time error to |
15 // refer to this (implicitly or explicitly) from an initializer. | 13 // refer to this (implicitly or explicitly) from an initializer. |
16 // When we remove the line with moreStaticFun, staticFun is really a | 14 // When we remove the line with moreStaticFun, staticFun is really a |
17 // static function and it is legal to call it. This is what will | 15 // static function and it is legal to call it. This is what will |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 D d = const D(498); | 61 D d = const D(498); |
64 Expect.equals(499, d.x); | 62 Expect.equals(499, d.x); |
65 d = const D.named(249); | 63 d = const D.named(249); |
66 Expect.equals(499, d.x); | 64 Expect.equals(499, d.x); |
67 } | 65 } |
68 } | 66 } |
69 | 67 |
70 main() { | 68 main() { |
71 ConstructorRedirectTest.testMain(); | 69 ConstructorRedirectTest.testMain(); |
72 } | 70 } |
OLD | NEW |