| OLD | NEW |
| 1 dart.library('dart/_isolate_helper', null, /* Imports */[ | 1 dart.library('dart/_isolate_helper', null, /* Imports */[ |
| 2 'dart/core', | 2 'dart/core', |
| 3 'dart/_native_typed_data', | 3 'dart/_native_typed_data', |
| 4 'dart/_interceptors', | 4 'dart/_interceptors', |
| 5 'dart/_js_helper', | 5 'dart/_js_helper', |
| 6 'dart/isolate', | 6 'dart/isolate', |
| 7 'dart/_foreign_helper', | 7 'dart/_foreign_helper', |
| 8 'dart/_js_embedded_names', | 8 'dart/_js_embedded_names', |
| 9 'dart/collection', | 9 'dart/collection', |
| 10 'dart/async' | 10 'dart/async' |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 return ["extendable", serialized]; | 99 return ["extendable", serialized]; |
| 100 if (dart.is(indexable, _interceptors.JSMutableArray)) | 100 if (dart.is(indexable, _interceptors.JSMutableArray)) |
| 101 return ["mutable", serialized]; | 101 return ["mutable", serialized]; |
| 102 if (dart.is(indexable, _interceptors.JSArray)) | 102 if (dart.is(indexable, _interceptors.JSArray)) |
| 103 return ["const", serialized]; | 103 return ["const", serialized]; |
| 104 this.unsupported(indexable, "Can't serialize indexable: "); | 104 this.unsupported(indexable, "Can't serialize indexable: "); |
| 105 return null; | 105 return null; |
| 106 } | 106 } |
| 107 serializeArray(x) { | 107 serializeArray(x) { |
| 108 let serialized = []; | 108 let serialized = []; |
| 109 serialized.length = x.length; | 109 serialized[dartx.length] = x[dartx.length]; |
| 110 for (let i = 0; dart.notNull(i) < dart.notNull(x.length); i = dart.notNull
(i) + 1) { | 110 for (let i = 0; dart.notNull(i) < dart.notNull(x[dartx.length]); i = dart.
notNull(i) + 1) { |
| 111 serialized[dartx.set](i, this.serialize(x[dartx.get](i))); | 111 serialized[dartx.set](i, this.serialize(x[dartx.get](i))); |
| 112 } | 112 } |
| 113 return serialized; | 113 return serialized; |
| 114 } | 114 } |
| 115 serializeArrayInPlace(x) { | 115 serializeArrayInPlace(x) { |
| 116 for (let i = 0; dart.notNull(i) < dart.notNull(x.length); i = dart.notNull
(i) + 1) { | 116 for (let i = 0; dart.notNull(i) < dart.notNull(x[dartx.length]); i = dart.
notNull(i) + 1) { |
| 117 x[dartx.set](i, this.serialize(x[dartx.get](i))); | 117 x[dartx.set](i, this.serialize(x[dartx.get](i))); |
| 118 } | 118 } |
| 119 return x; | 119 return x; |
| 120 } | 120 } |
| 121 serializeMap(x) { | 121 serializeMap(x) { |
| 122 let serializeTearOff = dart.bind(this, 'serialize'); | 122 let serializeTearOff = dart.bind(this, 'serialize'); |
| 123 return ['map', x.keys[dartx.map](dart.as(serializeTearOff, __CastType0))[d
artx.toList](), x.values[dartx.map](dart.as(serializeTearOff, dart.functionType(
core.Object, [dart.bottom])))[dartx.toList]()]; | 123 return ['map', x.keys[dartx.map](dart.as(serializeTearOff, __CastType0))[d
artx.toList](), x.values[dartx.map](dart.as(serializeTearOff, dart.functionType(
core.Object, [dart.bottom])))[dartx.toList]()]; |
| 124 } | 124 } |
| 125 serializeJSObject(x) { | 125 serializeJSObject(x) { |
| 126 if (!!x.constructor && x.constructor !== Object) { | 126 if (!!x.constructor && x.constructor !== Object) { |
| 127 this.unsupported(x, "Only plain JS Objects are supported:"); | 127 this.unsupported(x, "Only plain JS Objects are supported:"); |
| 128 } | 128 } |
| 129 let keys = dart.as(Object.keys(x), core.List); | 129 let keys = dart.as(Object.keys(x), core.List); |
| 130 let values = []; | 130 let values = []; |
| 131 values.length = keys.length; | 131 values[dartx.length] = keys[dartx.length]; |
| 132 for (let i = 0; dart.notNull(i) < dart.notNull(keys.length); i = dart.notN
ull(i) + 1) { | 132 for (let i = 0; dart.notNull(i) < dart.notNull(keys[dartx.length]); i = da
rt.notNull(i) + 1) { |
| 133 values[dartx.set](i, this.serialize(x[keys[dartx.get](i)])); | 133 values[dartx.set](i, this.serialize(x[keys[dartx.get](i)])); |
| 134 } | 134 } |
| 135 return ['js-object', keys, values]; | 135 return ['js-object', keys, values]; |
| 136 } | 136 } |
| 137 serializeWorkerSendPort(x) { | 137 serializeWorkerSendPort(x) { |
| 138 if (dart.notNull(this[_serializeSendPorts])) { | 138 if (dart.notNull(this[_serializeSendPorts])) { |
| 139 return ['sendport', x[_workerId], x[_isolateId], x[_receivePortId]]; | 139 return ['sendport', x[_workerId], x[_isolateId], x[_receivePortId]]; |
| 140 } | 140 } |
| 141 return ['raw sendport', x]; | 141 return ['raw sendport', x]; |
| 142 } | 142 } |
| (...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 this.deserializedObjects[dartx.add](result); | 275 this.deserializedObjects[dartx.add](result); |
| 276 return result; | 276 return result; |
| 277 } | 277 } |
| 278 deserializeTypedData(x) { | 278 deserializeTypedData(x) { |
| 279 dart.assert(dart.equals(dart.dindex(x, 0), 'typed')); | 279 dart.assert(dart.equals(dart.dindex(x, 0), 'typed')); |
| 280 let result = dart.as(dart.dindex(x, 1), _native_typed_data.NativeTypedData
); | 280 let result = dart.as(dart.dindex(x, 1), _native_typed_data.NativeTypedData
); |
| 281 this.deserializedObjects[dartx.add](result); | 281 this.deserializedObjects[dartx.add](result); |
| 282 return result; | 282 return result; |
| 283 } | 283 } |
| 284 deserializeArrayInPlace(x) { | 284 deserializeArrayInPlace(x) { |
| 285 for (let i = 0; dart.notNull(i) < dart.notNull(x.length); i = dart.notNull
(i) + 1) { | 285 for (let i = 0; dart.notNull(i) < dart.notNull(x[dartx.length]); i = dart.
notNull(i) + 1) { |
| 286 x[dartx.set](i, this.deserialize(x[dartx.get](i))); | 286 x[dartx.set](i, this.deserialize(x[dartx.get](i))); |
| 287 } | 287 } |
| 288 return x; | 288 return x; |
| 289 } | 289 } |
| 290 deserializeFixed(x) { | 290 deserializeFixed(x) { |
| 291 dart.assert(dart.equals(dart.dindex(x, 0), 'fixed')); | 291 dart.assert(dart.equals(dart.dindex(x, 0), 'fixed')); |
| 292 let result = dart.as(dart.dindex(x, 1), core.List); | 292 let result = dart.as(dart.dindex(x, 1), core.List); |
| 293 this.deserializedObjects[dartx.add](result); | 293 this.deserializedObjects[dartx.add](result); |
| 294 return _interceptors.JSArray.markFixed(this.deserializeArrayInPlace(dart.a
s(result, _interceptors.JSArray))); | 294 return _interceptors.JSArray.markFixed(this.deserializeArrayInPlace(dart.a
s(result, _interceptors.JSArray))); |
| 295 } | 295 } |
| (...skipping 15 matching lines...) Expand all Loading... |
| 311 this.deserializedObjects[dartx.add](result); | 311 this.deserializedObjects[dartx.add](result); |
| 312 return _interceptors.JSArray.markFixed(this.deserializeArrayInPlace(dart.a
s(result, _interceptors.JSArray))); | 312 return _interceptors.JSArray.markFixed(this.deserializeArrayInPlace(dart.a
s(result, _interceptors.JSArray))); |
| 313 } | 313 } |
| 314 deserializeMap(x) { | 314 deserializeMap(x) { |
| 315 dart.assert(dart.equals(dart.dindex(x, 0), 'map')); | 315 dart.assert(dart.equals(dart.dindex(x, 0), 'map')); |
| 316 let keys = dart.as(dart.dindex(x, 1), core.List); | 316 let keys = dart.as(dart.dindex(x, 1), core.List); |
| 317 let values = dart.as(dart.dindex(x, 2), core.List); | 317 let values = dart.as(dart.dindex(x, 2), core.List); |
| 318 let result = dart.map(); | 318 let result = dart.map(); |
| 319 this.deserializedObjects[dartx.add](result); | 319 this.deserializedObjects[dartx.add](result); |
| 320 keys = keys[dartx.map](dart.bind(this, 'deserialize'))[dartx.toList](); | 320 keys = keys[dartx.map](dart.bind(this, 'deserialize'))[dartx.toList](); |
| 321 for (let i = 0; dart.notNull(i) < dart.notNull(keys.length); i = dart.notN
ull(i) + 1) { | 321 for (let i = 0; dart.notNull(i) < dart.notNull(keys[dartx.length]); i = da
rt.notNull(i) + 1) { |
| 322 result.set(keys[dartx.get](i), this.deserialize(values[dartx.get](i))); | 322 result.set(keys[dartx.get](i), this.deserialize(values[dartx.get](i))); |
| 323 } | 323 } |
| 324 return result; | 324 return result; |
| 325 } | 325 } |
| 326 deserializeSendPort(x) { | 326 deserializeSendPort(x) { |
| 327 dart.assert(dart.equals(dart.dindex(x, 0), 'sendport')); | 327 dart.assert(dart.equals(dart.dindex(x, 0), 'sendport')); |
| 328 let managerId = dart.as(dart.dindex(x, 1), core.int); | 328 let managerId = dart.as(dart.dindex(x, 1), core.int); |
| 329 let isolateId = dart.as(dart.dindex(x, 2), core.int); | 329 let isolateId = dart.as(dart.dindex(x, 2), core.int); |
| 330 let receivePortId = dart.as(dart.dindex(x, 3), core.int); | 330 let receivePortId = dart.as(dart.dindex(x, 3), core.int); |
| 331 let result = null; | 331 let result = null; |
| (...skipping 16 matching lines...) Expand all Loading... |
| 348 let result = dart.as(dart.dindex(x, 1), isolate.SendPort); | 348 let result = dart.as(dart.dindex(x, 1), isolate.SendPort); |
| 349 this.deserializedObjects[dartx.add](result); | 349 this.deserializedObjects[dartx.add](result); |
| 350 return result; | 350 return result; |
| 351 } | 351 } |
| 352 deserializeJSObject(x) { | 352 deserializeJSObject(x) { |
| 353 dart.assert(dart.equals(dart.dindex(x, 0), 'js-object')); | 353 dart.assert(dart.equals(dart.dindex(x, 0), 'js-object')); |
| 354 let keys = dart.as(dart.dindex(x, 1), core.List); | 354 let keys = dart.as(dart.dindex(x, 1), core.List); |
| 355 let values = dart.as(dart.dindex(x, 2), core.List); | 355 let values = dart.as(dart.dindex(x, 2), core.List); |
| 356 let o = {}; | 356 let o = {}; |
| 357 this.deserializedObjects[dartx.add](o); | 357 this.deserializedObjects[dartx.add](o); |
| 358 for (let i = 0; dart.notNull(i) < dart.notNull(keys.length); i = dart.notN
ull(i) + 1) { | 358 for (let i = 0; dart.notNull(i) < dart.notNull(keys[dartx.length]); i = da
rt.notNull(i) + 1) { |
| 359 o[keys[dartx.get](i)] = this.deserialize(values[dartx.get](i)); | 359 o[keys[dartx.get](i)] = this.deserialize(values[dartx.get](i)); |
| 360 } | 360 } |
| 361 return o; | 361 return o; |
| 362 } | 362 } |
| 363 deserializeClosure(x) { | 363 deserializeClosure(x) { |
| 364 dart.assert(dart.equals(dart.dindex(x, 0), 'function')); | 364 dart.assert(dart.equals(dart.dindex(x, 0), 'function')); |
| 365 let name = dart.as(dart.dindex(x, 1), core.String); | 365 let name = dart.as(dart.dindex(x, 1), core.String); |
| 366 let result = dart.as(IsolateNatives._getJSFunctionFromName(name), core.Fun
ction); | 366 let result = dart.as(IsolateNatives._getJSFunctionFromName(name), core.Fun
ction); |
| 367 this.deserializedObjects[dartx.add](result); | 367 this.deserializedObjects[dartx.add](result); |
| 368 return result; | 368 return result; |
| (...skipping 1183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1552 exports.leaveJsAsync = leaveJsAsync; | 1552 exports.leaveJsAsync = leaveJsAsync; |
| 1553 exports.isWorker = isWorker; | 1553 exports.isWorker = isWorker; |
| 1554 exports.startRootIsolate = startRootIsolate; | 1554 exports.startRootIsolate = startRootIsolate; |
| 1555 exports.IsolateNatives = IsolateNatives; | 1555 exports.IsolateNatives = IsolateNatives; |
| 1556 exports.RawReceivePortImpl = RawReceivePortImpl; | 1556 exports.RawReceivePortImpl = RawReceivePortImpl; |
| 1557 exports.ReceivePortImpl = ReceivePortImpl; | 1557 exports.ReceivePortImpl = ReceivePortImpl; |
| 1558 exports.TimerImpl = TimerImpl; | 1558 exports.TimerImpl = TimerImpl; |
| 1559 exports.hasTimer = hasTimer; | 1559 exports.hasTimer = hasTimer; |
| 1560 exports.CapabilityImpl = CapabilityImpl; | 1560 exports.CapabilityImpl = CapabilityImpl; |
| 1561 }); | 1561 }); |
| OLD | NEW |