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 library test.constructors_test; | 5 library test.constructors_test; |
6 | 6 |
7 // Regression test for C1 bug. | 7 // Regression test for C1 bug. |
8 | 8 |
| 9 @MirrorsUsed(targets: "test.constructors_test") |
9 import 'dart:mirrors'; | 10 import 'dart:mirrors'; |
10 | 11 |
11 import 'package:expect/expect.dart'; | 12 import 'package:expect/expect.dart'; |
12 | 13 |
13 class Foo { | 14 class Foo { |
14 Foo._private(); | 15 Foo._private(); |
15 } | 16 } |
16 | 17 |
17 class _Foo { | 18 class _Foo { |
18 _Foo._private(); | 19 _Foo._private(); |
19 } | 20 } |
20 | 21 |
21 main() { | 22 main() { |
22 ClassMirror fooMirror = reflectClass(Foo); | 23 ClassMirror fooMirror = reflectClass(Foo); |
23 Symbol constructorName = | 24 Symbol constructorName = |
24 (fooMirror.declarations[#Foo._private] as MethodMirror).constructorName; | 25 (fooMirror.declarations[#Foo._private] as MethodMirror).constructorName; |
25 fooMirror.newInstance(constructorName, []); | 26 fooMirror.newInstance(constructorName, []); |
26 | 27 |
27 ClassMirror _fooMirror = reflectClass(_Foo); | 28 ClassMirror _fooMirror = reflectClass(_Foo); |
28 constructorName = | 29 constructorName = |
29 (_fooMirror.declarations[#_Foo._private] as MethodMirror).constructorName; | 30 (_fooMirror.declarations[#_Foo._private] as MethodMirror).constructorName; |
30 _fooMirror.newInstance(constructorName, []); | 31 _fooMirror.newInstance(constructorName, []); |
31 } | 32 } |
OLD | NEW |