| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 import "package:expect/expect.dart"; | |
| 6 | |
| 7 class A<T> { | |
| 8 var closure; | |
| 9 | |
| 10 factory A.factory() => new A(() => new List<T>()); | |
| 11 | |
| 12 A([this.closure]) { | |
| 13 if (closure == null) { | |
| 14 closure = () => new List<T>(); | |
| 15 } | |
| 16 } | |
| 17 } | |
| 18 | |
| 19 main() { | |
| 20 Expect.isTrue((new A.factory()).closure() is List); | |
| 21 Expect.isTrue((new A()).closure() is List); | |
| 22 Expect.isTrue((new A<int>.factory()).closure() is List<int>); | |
| 23 Expect.isTrue((new A<int>()).closure() is List<int>); | |
| 24 Expect.isFalse((new A<int>.factory()).closure() is List<String>); | |
| 25 Expect.isFalse((new A<int>()).closure() is List<String>); | |
| 26 } | |
| OLD | NEW |