| Index: lib/runtime/dart/_js_mirrors.js
|
| diff --git a/lib/runtime/dart/_js_mirrors.js b/lib/runtime/dart/_js_mirrors.js
|
| index 0051e8d903bb719ca3e9e7d054be26413772bca2..4cd7b96c6e575574ceabeecc5cc15df53d240882 100644
|
| --- a/lib/runtime/dart/_js_mirrors.js
|
| +++ b/lib/runtime/dart/_js_mirrors.js
|
| @@ -8,7 +8,7 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| 'use strict';
|
| let dartx = dart.dartx;
|
| function getName(symbol) {
|
| - return _internal.Symbol.getName(dart.as(symbol, _internal.Symbol));
|
| + return dart.dcall(_internal.Symbol.getName, dart.as(symbol, _internal.Symbol));
|
| }
|
| dart.fn(getName, core.String, [core.Symbol]);
|
| function getSymbol(name, library) {
|
| @@ -63,30 +63,30 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| return dart.throw(new core.UnimplementedError("ClassMirror.delegate unimplemented"));
|
| }
|
| getField(symbol) {
|
| - let name = getName(symbol);
|
| - let field = _dload(this.reflectee, name);
|
| + let name = dart.dcall(getName, symbol);
|
| + let field = dart.dcall(_dload, this.reflectee, name);
|
| return new JsInstanceMirror._(field);
|
| }
|
| setField(symbol, value) {
|
| - let name = getName(symbol);
|
| - _dput(this.reflectee, name, value);
|
| + let name = dart.dcall(getName, symbol);
|
| + dart.dcall(_dput, this.reflectee, name, value);
|
| return new JsInstanceMirror._(value);
|
| }
|
| invoke(symbol, args, namedArgs) {
|
| if (namedArgs === void 0)
|
| namedArgs = null;
|
| - let name = getName(symbol);
|
| + let name = dart.dcall(getName, symbol);
|
| if (namedArgs != null) {
|
| args = core.List.from(args);
|
| - args[dartx.add](this[_toJsMap](namedArgs));
|
| + dart.dcall(args[dartx.add], dart.dcall(this[_toJsMap], namedArgs));
|
| }
|
| - let result = _dsend(this.reflectee, name, args);
|
| + let result = dart.dcall(_dsend, this.reflectee, name, args);
|
| return new JsInstanceMirror._(result);
|
| }
|
| [_toJsMap](map) {
|
| let obj = {};
|
| - map.forEach(dart.fn((key, value) => {
|
| - obj[getName(key)] = value;
|
| + dart.dcall(map.forEach, dart.fn((key, value) => {
|
| + obj[dart.dcall(getName, key)] = value;
|
| }, dart.dynamic, [core.Symbol, dart.dynamic]));
|
| return obj;
|
| }
|
| @@ -115,7 +115,7 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| }
|
| _(cls) {
|
| this[_cls] = cls;
|
| - this.simpleName = core.Symbol.new(cls.name);
|
| + this.simpleName = core.Symbol.new(dart.as(cls.name, core.String));
|
| this[_metadata] = null;
|
| this[_declarations] = null;
|
| let fn = this[_cls][dart.metadata];
|
| @@ -126,7 +126,7 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| newInstance(constructorName, args, namedArgs) {
|
| if (namedArgs === void 0)
|
| namedArgs = null;
|
| - dart.assert(getName(constructorName) == "");
|
| + dart.assert(dart.dcall(getName, constructorName) == "");
|
| dart.assert(namedArgs == null || dart.notNull(namedArgs.isEmpty));
|
| let instance = new this[_cls](...args);
|
| return new JsInstanceMirror._(instance);
|
| @@ -283,7 +283,7 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| _(name, t, annotations) {
|
| this[_name] = name;
|
| this.type = new JsTypeMirror._(t);
|
| - this.metadata = core.List$(mirrors.InstanceMirror).from(annotations[dartx.map](dart.fn(a => new JsInstanceMirror._(a), JsInstanceMirror, [dart.dynamic])));
|
| + this.metadata = core.List$(mirrors.InstanceMirror).from(dart.dcall(annotations[dartx.map], dart.fn(a => new JsInstanceMirror._(a), JsInstanceMirror, [dart.dynamic])));
|
| }
|
| get defaultValue() {
|
| return dart.throw(new core.UnimplementedError("ParameterMirror.defaultValues unimplemented"));
|
| @@ -336,10 +336,10 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| class JsMethodMirror extends core.Object {
|
| _(cls, method) {
|
| this[_method] = method;
|
| - this[_name] = getName(cls.simpleName);
|
| + this[_name] = dart.dcall(getName, cls.simpleName);
|
| this[_params] = null;
|
| let ftype = exports._dart.classGetConstructorType(cls[_cls]);
|
| - this[_params] = this[_createParameterMirrorList](ftype);
|
| + this[_params] = dart.dcall(this[_createParameterMirrorList], ftype);
|
| }
|
| get constructorName() {
|
| return core.Symbol.new('');
|
| @@ -354,19 +354,19 @@ dart_library.library('dart/_js_mirrors', null, /* Imports */[
|
| let args = dart.as(dart.dload(ftype, 'args'), core.List);
|
| let opts = dart.as(dart.dload(ftype, 'optionals'), core.List);
|
| let params = core.List$(mirrors.ParameterMirror).new(dart.notNull(args[dartx.length]) + dart.notNull(opts[dartx.length]));
|
| - for (let i = 0; dart.notNull(i) < dart.notNull(args[dartx.length]); i = dart.notNull(i) + 1) {
|
| - let type = args[dartx.get](i);
|
| + for (let i = 0; dart.notNull(dart.as(dart.dsend(i, '<', args[dartx.length]), core.bool)); i = dart.dsend(i, '+', 1)) {
|
| + let type = args[dartx.get](dart.as(i, core.int));
|
| let metadata = dart.dindex(dart.dload(ftype, 'metadata'), i);
|
| let param = new JsParameterMirror._('', dart.as(type, core.Type), dart.as(metadata, core.List));
|
| - params[dartx.set](i, param);
|
| + dart.dsetindex(params, i, param);
|
| }
|
| - for (let i = 0; dart.notNull(i) < dart.notNull(opts[dartx.length]); i = dart.notNull(i) + 1) {
|
| - let type = opts[dartx.get](i);
|
| - let metadata = dart.dindex(dart.dload(ftype, 'metadata'), dart.notNull(args[dartx.length]) + dart.notNull(i));
|
| + for (let i = 0; dart.notNull(dart.as(dart.dsend(i, '<', opts[dartx.length]), core.bool)); i = dart.dsend(i, '+', 1)) {
|
| + let type = opts[dartx.get](dart.as(i, core.int));
|
| + let metadata = dart.dindex(dart.dload(ftype, 'metadata'), dart.notNull(args[dartx.length]) + dart.notNull(dart.as(i, core.num)));
|
| let param = new JsParameterMirror._('', dart.as(type, core.Type), dart.as(metadata, core.List));
|
| - params[dartx.set](dart.notNull(i) + dart.notNull(args[dartx.length]), param);
|
| + dart.dsetindex(params, dart.dsend(i, '+', args[dartx.length]), param);
|
| }
|
| - return params;
|
| + return dart.as(params, core.List$(mirrors.ParameterMirror));
|
| }
|
| get isAbstract() {
|
| return dart.throw(new core.UnimplementedError("MethodMirror.isAbstract unimplemented"));
|
|
|