| Index: dart/sdk/lib/_internal/compiler/implementation/lib/mirrors_patch.dart
|
| diff --git a/dart/sdk/lib/_internal/compiler/implementation/lib/mirrors_patch.dart b/dart/sdk/lib/_internal/compiler/implementation/lib/mirrors_patch.dart
|
| index 6b5ecbc80d99350eac127ae69ca28e4428237747..88e9bbaf26ed332b6b967eabf579690a04b958af 100644
|
| --- a/dart/sdk/lib/_internal/compiler/implementation/lib/mirrors_patch.dart
|
| +++ b/dart/sdk/lib/_internal/compiler/implementation/lib/mirrors_patch.dart
|
| @@ -231,6 +231,30 @@ class _ClassMirror extends _ObjectMirror implements ClassMirror {
|
| JS('', r'$[#]', '${_n(simpleName)}_${_n(fieldName)}'));
|
| }
|
|
|
| + InstanceMirror newInstance(Symbol constructorName,
|
| + List positionalArguments,
|
| + [Map<Symbol,dynamic> namedArguments]) {
|
| + if (namedArguments != null && !namedArguments.isEmpty) {
|
| + throw new UnsupportedError('Named arguments are not implemented');
|
| + }
|
| + String constructorName = '${_n(simpleName)}\$${_n(constructorName)}';
|
| + return _reflect(JS('', r'$[#].apply($, #)', constructorName,
|
| + new List.from(positionalArguments)));
|
| + }
|
| +
|
| + Future<InstanceMirror> newInstanceAsync(
|
| + Symbol constructorName,
|
| + List positionalArguments,
|
| + [Map<Symbol, dynamic> namedArguments]) {
|
| + if (namedArguments != null && !namedArguments.isEmpty) {
|
| + throw new UnsupportedError('Named arguments are not implemented');
|
| + }
|
| + return new Future<InstanceMirror>(
|
| + () => newInstance(
|
| + constructorName, positionalArguments, namedArguments));
|
| + }
|
| +
|
| +
|
| String toString() => 'ClassMirror(${_n(simpleName)})';
|
| }
|
|
|
|
|