OLD | NEW |
(Empty) | |
| 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 |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 |
| 5 // Ensure that classes handled specially by dart2js can be reflected on. |
| 6 |
| 7 library test.intercepted_class_test; |
| 8 |
| 9 import 'dart:mirrors'; |
| 10 |
| 11 import 'stringify.dart' show stringify, expect; |
| 12 |
| 13 checkClassMirrorMethods(ClassMirror cls) { |
| 14 var variables = new Map(); |
| 15 cls.declarations.forEach((Symbol key, DeclarationMirror value) { |
| 16 if (value is VariableMirror && !value.isStatic && !value.isPrivate) { |
| 17 variables[key] = value; |
| 18 } |
| 19 }); |
| 20 expect('{}', variables); |
| 21 } |
| 22 |
| 23 checkClassMirror(ClassMirror cls, String name) { |
| 24 expect('s($name)', cls.simpleName); |
| 25 checkClassMirrorMethods(cls); |
| 26 } |
| 27 |
| 28 main() { |
| 29 checkClassMirror(reflectClass(String), 'String'); |
| 30 checkClassMirror(reflectClass(int), 'int'); |
| 31 checkClassMirror(reflectClass(double), 'double'); |
| 32 checkClassMirror(reflectClass(num), 'num'); |
| 33 checkClassMirror(reflectClass(bool), 'bool'); |
| 34 checkClassMirror(reflectClass(List), 'List'); |
| 35 } |
OLD | NEW |