Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(59)

Side by Side Diff: lib/runtime/dart/_isolate_helper.js

Issue 1483813002: Use const for const/final top-levels, types, symbols. (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Rebased after vsm's regen Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « lib/runtime/dart/_internal.js ('k') | lib/runtime/dart/_js_embedded_names.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 dart_library.library('dart/_isolate_helper', null, /* Imports */[ 1 dart_library.library('dart/_isolate_helper', null, /* Imports */[
2 "dart/_runtime", 2 "dart/_runtime",
3 'dart/core', 3 'dart/core',
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/collection', 8 'dart/collection',
9 'dart/async' 9 'dart/async'
10 ], /* Lazy imports */[ 10 ], /* Lazy imports */[
11 'dart/_native_typed_data', 11 'dart/_native_typed_data',
12 'dart/_js_embedded_names' 12 'dart/_js_embedded_names'
13 ], function(exports, dart, core, _interceptors, _js_helper, isolate, _foreign_he lper, collection, async, _native_typed_data, _js_embedded_names) { 13 ], function(exports, dart, core, _interceptors, _js_helper, isolate, _foreign_he lper, collection, async, _native_typed_data, _js_embedded_names) {
14 'use strict'; 14 'use strict';
15 let dartx = dart.dartx; 15 let dartx = dart.dartx;
16 function _serializeMessage(message) { 16 function _serializeMessage(message) {
17 return new _Serializer().serialize(message); 17 return new _Serializer().serialize(message);
18 } 18 }
19 dart.fn(_serializeMessage); 19 dart.fn(_serializeMessage);
20 function _deserializeMessage(message) { 20 function _deserializeMessage(message) {
21 return new _Deserializer().deserialize(message); 21 return new _Deserializer().deserialize(message);
22 } 22 }
23 dart.fn(_deserializeMessage); 23 dart.fn(_deserializeMessage);
24 function _clone(message) { 24 function _clone(message) {
25 let serializer = new _Serializer({serializeSendPorts: false}); 25 let serializer = new _Serializer({serializeSendPorts: false});
26 let deserializer = new _Deserializer(); 26 let deserializer = new _Deserializer();
27 return deserializer.deserialize(serializer.serialize(message)); 27 return deserializer.deserialize(serializer.serialize(message));
28 } 28 }
29 dart.fn(_clone); 29 dart.fn(_clone);
30 let _serializeSendPorts = Symbol('_serializeSendPorts'); 30 const _serializeSendPorts = Symbol('_serializeSendPorts');
31 let _workerId = Symbol('_workerId'); 31 const _workerId = Symbol('_workerId');
32 let _isolateId = Symbol('_isolateId'); 32 const _isolateId = Symbol('_isolateId');
33 let _receivePortId = Symbol('_receivePortId'); 33 const _receivePortId = Symbol('_receivePortId');
34 let _id = Symbol('_id'); 34 const _id = Symbol('_id');
35 let _receivePort = Symbol('_receivePort'); 35 const _receivePort = Symbol('_receivePort');
36 class _Serializer extends core.Object { 36 class _Serializer extends core.Object {
37 _Serializer(opts) { 37 _Serializer(opts) {
38 let serializeSendPorts = opts && 'serializeSendPorts' in opts ? opts.seria lizeSendPorts : true; 38 let serializeSendPorts = opts && 'serializeSendPorts' in opts ? opts.seria lizeSendPorts : true;
39 this.serializedObjectIds = core.Map$(dart.dynamic, core.int).identity(); 39 this.serializedObjectIds = core.Map$(dart.dynamic, core.int).identity();
40 this[_serializeSendPorts] = dart.as(serializeSendPorts, core.bool); 40 this[_serializeSendPorts] = dart.as(serializeSendPorts, core.bool);
41 } 41 }
42 serialize(x) { 42 serialize(x) {
43 if (dart.notNull(this.isPrimitive(x))) 43 if (dart.notNull(this.isPrimitive(x)))
44 return this.serializePrimitive(x); 44 return this.serializePrimitive(x);
45 let serializationId = this.serializedObjectIds.get(x); 45 let serializationId = this.serializedObjectIds.get(x);
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 serializeArrayInPlace: [dart.dynamic, [_interceptors.JSArray]], 182 serializeArrayInPlace: [dart.dynamic, [_interceptors.JSArray]],
183 serializeMap: [dart.dynamic, [core.Map]], 183 serializeMap: [dart.dynamic, [core.Map]],
184 serializeJSObject: [dart.dynamic, [_interceptors.JSObject]], 184 serializeJSObject: [dart.dynamic, [_interceptors.JSObject]],
185 serializeWorkerSendPort: [dart.dynamic, [_WorkerSendPort]], 185 serializeWorkerSendPort: [dart.dynamic, [_WorkerSendPort]],
186 serializeJsSendPort: [dart.dynamic, [_NativeJsSendPort]], 186 serializeJsSendPort: [dart.dynamic, [_NativeJsSendPort]],
187 serializeCapability: [dart.dynamic, [CapabilityImpl]], 187 serializeCapability: [dart.dynamic, [CapabilityImpl]],
188 serializeClosure: [dart.dynamic, [core.Function]], 188 serializeClosure: [dart.dynamic, [core.Function]],
189 serializeDartObject: [dart.dynamic, [dart.dynamic]] 189 serializeDartObject: [dart.dynamic, [dart.dynamic]]
190 }) 190 })
191 }); 191 });
192 let _adjustSendPorts = Symbol('_adjustSendPorts'); 192 const _adjustSendPorts = Symbol('_adjustSendPorts');
193 class _Deserializer extends core.Object { 193 class _Deserializer extends core.Object {
194 _Deserializer(opts) { 194 _Deserializer(opts) {
195 let adjustSendPorts = opts && 'adjustSendPorts' in opts ? opts.adjustSendP orts : true; 195 let adjustSendPorts = opts && 'adjustSendPorts' in opts ? opts.adjustSendP orts : true;
196 this.deserializedObjects = core.List.new(); 196 this.deserializedObjects = core.List.new();
197 this[_adjustSendPorts] = dart.as(adjustSendPorts, core.bool); 197 this[_adjustSendPorts] = dart.as(adjustSendPorts, core.bool);
198 } 198 }
199 deserialize(x) { 199 deserialize(x) {
200 if (dart.notNull(this.isPrimitive(x))) 200 if (dart.notNull(this.isPrimitive(x)))
201 return this.deserializePrimitive(x); 201 return this.deserializePrimitive(x);
202 if (!dart.is(x, _interceptors.JSArray)) 202 if (!dart.is(x, _interceptors.JSArray))
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 deserializeMutable: [core.List, [dart.dynamic]], 396 deserializeMutable: [core.List, [dart.dynamic]],
397 deserializeConst: [core.List, [dart.dynamic]], 397 deserializeConst: [core.List, [dart.dynamic]],
398 deserializeMap: [core.Map, [dart.dynamic]], 398 deserializeMap: [core.Map, [dart.dynamic]],
399 deserializeSendPort: [isolate.SendPort, [dart.dynamic]], 399 deserializeSendPort: [isolate.SendPort, [dart.dynamic]],
400 deserializeRawSendPort: [isolate.SendPort, [dart.dynamic]], 400 deserializeRawSendPort: [isolate.SendPort, [dart.dynamic]],
401 deserializeJSObject: [dart.dynamic, [dart.dynamic]], 401 deserializeJSObject: [dart.dynamic, [dart.dynamic]],
402 deserializeClosure: [core.Function, [dart.dynamic]], 402 deserializeClosure: [core.Function, [dart.dynamic]],
403 deserializeDartObject: [dart.dynamic, [dart.dynamic]] 403 deserializeDartObject: [dart.dynamic, [dart.dynamic]]
404 }) 404 })
405 }); 405 });
406 let __CastType0 = dart.typedef('__CastType0', () => dart.functionType(dart.dyn amic, [dart.dynamic])); 406 const __CastType0 = dart.typedef('__CastType0', () => dart.functionType(dart.d ynamic, [dart.dynamic]));
407 function _callInIsolate(isolate, func) { 407 function _callInIsolate(isolate, func) {
408 let result = isolate.eval(func); 408 let result = isolate.eval(func);
409 exports._globalState.topEventLoop.run(); 409 exports._globalState.topEventLoop.run();
410 return result; 410 return result;
411 } 411 }
412 dart.fn(_callInIsolate, () => dart.definiteFunctionType(dart.dynamic, [_Isolat eContext, core.Function])); 412 dart.fn(_callInIsolate, () => dart.definiteFunctionType(dart.dynamic, [_Isolat eContext, core.Function]));
413 let _activeJsAsyncCount = Symbol('_activeJsAsyncCount'); 413 const _activeJsAsyncCount = Symbol('_activeJsAsyncCount');
414 function enterJsAsync() { 414 function enterJsAsync() {
415 let o = exports._globalState.topEventLoop; 415 let o = exports._globalState.topEventLoop;
416 o[_activeJsAsyncCount] = dart.notNull(o[_activeJsAsyncCount]) + 1; 416 o[_activeJsAsyncCount] = dart.notNull(o[_activeJsAsyncCount]) + 1;
417 } 417 }
418 dart.fn(enterJsAsync); 418 dart.fn(enterJsAsync);
419 function leaveJsAsync() { 419 function leaveJsAsync() {
420 let o = exports._globalState.topEventLoop; 420 let o = exports._globalState.topEventLoop;
421 o[_activeJsAsyncCount] = dart.notNull(o[_activeJsAsyncCount]) - 1; 421 o[_activeJsAsyncCount] = dart.notNull(o[_activeJsAsyncCount]) - 1;
422 dart.assert(dart.notNull(exports._globalState.topEventLoop[_activeJsAsyncCou nt]) >= 0); 422 dart.assert(dart.notNull(exports._globalState.topEventLoop[_activeJsAsyncCou nt]) >= 0);
423 } 423 }
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
458 } 458 }
459 dart.fn(startRootIsolate, dart.void, [dart.dynamic, dart.dynamic]); 459 dart.fn(startRootIsolate, dart.void, [dart.dynamic, dart.dynamic]);
460 dart.copyProperties(exports, { 460 dart.copyProperties(exports, {
461 get _globalState() { 461 get _globalState() {
462 return dart.as(dart.globalState, _Manager); 462 return dart.as(dart.globalState, _Manager);
463 }, 463 },
464 set _globalState(val) { 464 set _globalState(val) {
465 dart.globalState = val; 465 dart.globalState = val;
466 } 466 }
467 }); 467 });
468 let _nativeDetectEnvironment = Symbol('_nativeDetectEnvironment'); 468 const _nativeDetectEnvironment = Symbol('_nativeDetectEnvironment');
469 let _nativeInitWorkerMessageHandler = Symbol('_nativeInitWorkerMessageHandler' ); 469 const _nativeInitWorkerMessageHandler = Symbol('_nativeInitWorkerMessageHandle r');
470 class _Manager extends core.Object { 470 class _Manager extends core.Object {
471 get useWorkers() { 471 get useWorkers() {
472 return this.supportsWorkers; 472 return this.supportsWorkers;
473 } 473 }
474 _Manager(entry) { 474 _Manager(entry) {
475 this.entry = entry; 475 this.entry = entry;
476 this.nextIsolateId = 0; 476 this.nextIsolateId = 0;
477 this.currentManagerId = 0; 477 this.currentManagerId = 0;
478 this.nextManagerId = 1; 478 this.nextManagerId = 1;
479 this.currentContext = null; 479 this.currentContext = null;
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
530 dart.setSignature(_Manager, { 530 dart.setSignature(_Manager, {
531 constructors: () => ({_Manager: [_Manager, [core.Function]]}), 531 constructors: () => ({_Manager: [_Manager, [core.Function]]}),
532 methods: () => ({ 532 methods: () => ({
533 [_nativeDetectEnvironment]: [dart.void, []], 533 [_nativeDetectEnvironment]: [dart.void, []],
534 [_nativeInitWorkerMessageHandler]: [dart.void, []], 534 [_nativeInitWorkerMessageHandler]: [dart.void, []],
535 maybeCloseWorker: [dart.void, []] 535 maybeCloseWorker: [dart.void, []]
536 }), 536 }),
537 statics: () => ({_serializePrintMessage: [dart.dynamic, [dart.dynamic]]}), 537 statics: () => ({_serializePrintMessage: [dart.dynamic, [dart.dynamic]]}),
538 names: ['_serializePrintMessage'] 538 names: ['_serializePrintMessage']
539 }); 539 });
540 let _scheduledControlEvents = Symbol('_scheduledControlEvents'); 540 const _scheduledControlEvents = Symbol('_scheduledControlEvents');
541 let _isExecutingEvent = Symbol('_isExecutingEvent'); 541 const _isExecutingEvent = Symbol('_isExecutingEvent');
542 let _updateGlobalState = Symbol('_updateGlobalState'); 542 const _updateGlobalState = Symbol('_updateGlobalState');
543 let _setGlobals = Symbol('_setGlobals'); 543 const _setGlobals = Symbol('_setGlobals');
544 let _addRegistration = Symbol('_addRegistration'); 544 const _addRegistration = Symbol('_addRegistration');
545 let _close = Symbol('_close'); 545 const _close = Symbol('_close');
546 class _IsolateContext extends core.Object { 546 class _IsolateContext extends core.Object {
547 _IsolateContext() { 547 _IsolateContext() {
548 this.id = (() => { 548 this.id = (() => {
549 let o = exports._globalState, x = o.nextIsolateId; 549 let o = exports._globalState, x = o.nextIsolateId;
550 o.nextIsolateId = dart.notNull(x) + 1; 550 o.nextIsolateId = dart.notNull(x) + 1;
551 return x; 551 return x;
552 })(); 552 })();
553 this.ports = core.Map$(core.int, RawReceivePortImpl).new(); 553 this.ports = core.Map$(core.int, RawReceivePortImpl).new();
554 this.weakPorts = core.Set$(core.int).new(); 554 this.weakPorts = core.Set$(core.int).new();
555 this.isolateStatics = _foreign_helper.JS_CREATE_ISOLATE(); 555 this.isolateStatics = _foreign_helper.JS_CREATE_ISOLATE();
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after
819 handleControlMessage: [dart.void, [dart.dynamic]], 819 handleControlMessage: [dart.void, [dart.dynamic]],
820 lookup: [RawReceivePortImpl, [core.int]], 820 lookup: [RawReceivePortImpl, [core.int]],
821 [_addRegistration]: [dart.void, [core.int, RawReceivePortImpl]], 821 [_addRegistration]: [dart.void, [core.int, RawReceivePortImpl]],
822 register: [dart.void, [core.int, RawReceivePortImpl]], 822 register: [dart.void, [core.int, RawReceivePortImpl]],
823 registerWeak: [dart.void, [core.int, RawReceivePortImpl]], 823 registerWeak: [dart.void, [core.int, RawReceivePortImpl]],
824 [_updateGlobalState]: [dart.void, []], 824 [_updateGlobalState]: [dart.void, []],
825 kill: [dart.void, []], 825 kill: [dart.void, []],
826 unregister: [dart.void, [core.int]] 826 unregister: [dart.void, [core.int]]
827 }) 827 })
828 }); 828 });
829 let _runHelper = Symbol('_runHelper'); 829 const _runHelper = Symbol('_runHelper');
830 class _EventLoop extends core.Object { 830 class _EventLoop extends core.Object {
831 _EventLoop() { 831 _EventLoop() {
832 this.events = collection.Queue$(_IsolateEvent).new(); 832 this.events = collection.Queue$(_IsolateEvent).new();
833 this[_activeJsAsyncCount] = 0; 833 this[_activeJsAsyncCount] = 0;
834 } 834 }
835 enqueue(isolate, fn, msg) { 835 enqueue(isolate, fn, msg) {
836 this.events.addLast(new _IsolateEvent(dart.as(isolate, _IsolateContext), d art.as(fn, core.Function), dart.as(msg, core.String))); 836 this.events.addLast(new _IsolateEvent(dart.as(isolate, _IsolateContext), d art.as(fn, core.Function), dart.as(msg, core.String)));
837 } 837 }
838 prequeue(event) { 838 prequeue(event) {
839 this.events.addFirst(event); 839 this.events.addFirst(event);
(...skipping 13 matching lines...) Expand all
853 if (event == null) { 853 if (event == null) {
854 this.checkOpenReceivePortsFromCommandLine(); 854 this.checkOpenReceivePortsFromCommandLine();
855 exports._globalState.maybeCloseWorker(); 855 exports._globalState.maybeCloseWorker();
856 return false; 856 return false;
857 } 857 }
858 event.process(); 858 event.process();
859 return true; 859 return true;
860 } 860 }
861 [_runHelper]() { 861 [_runHelper]() {
862 if (exports.globalWindow != null) { 862 if (exports.globalWindow != null) {
863 let next = (function() { 863 const next = (function() {
864 if (!dart.notNull(this.runIteration())) 864 if (!dart.notNull(this.runIteration()))
865 return; 865 return;
866 async.Timer.run(next); 866 async.Timer.run(next);
867 }).bind(this); 867 }).bind(this);
868 dart.fn(next); 868 dart.fn(next);
869 next(); 869 next();
870 } else { 870 } else {
871 while (dart.notNull(this.runIteration())) { 871 while (dart.notNull(this.runIteration())) {
872 } 872 }
873 } 873 }
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
922 } 922 }
923 }); 923 });
924 class _MainManagerStub extends core.Object { 924 class _MainManagerStub extends core.Object {
925 postMessage(msg) { 925 postMessage(msg) {
926 exports._global.postMessage(msg); 926 exports._global.postMessage(msg);
927 } 927 }
928 } 928 }
929 dart.setSignature(_MainManagerStub, { 929 dart.setSignature(_MainManagerStub, {
930 methods: () => ({postMessage: [dart.void, [dart.dynamic]]}) 930 methods: () => ({postMessage: [dart.void, [dart.dynamic]]})
931 }); 931 });
932 let _SPAWNED_SIGNAL = "spawned"; 932 const _SPAWNED_SIGNAL = "spawned";
933 let _SPAWN_FAILED_SIGNAL = "spawn failed"; 933 const _SPAWN_FAILED_SIGNAL = "spawn failed";
934 dart.copyProperties(exports, { 934 dart.copyProperties(exports, {
935 get globalWindow() { 935 get globalWindow() {
936 return exports._global.window; 936 return exports._global.window;
937 }, 937 },
938 get globalWorker() { 938 get globalWorker() {
939 return exports._global.Worker; 939 return exports._global.Worker;
940 }, 940 },
941 get globalPostMessageDefined() { 941 get globalPostMessageDefined() {
942 return !!exports._global.postMessage; 942 return !!exports._global.postMessage;
943 } 943 }
944 }); 944 });
945 let _MainFunction = dart.typedef('_MainFunction', () => dart.functionType(dart .dynamic, [])); 945 const _MainFunction = dart.typedef('_MainFunction', () => dart.functionType(da rt.dynamic, []));
946 let _MainFunctionArgs = dart.typedef('_MainFunctionArgs', () => dart.functionT ype(dart.dynamic, [dart.dynamic])); 946 const _MainFunctionArgs = dart.typedef('_MainFunctionArgs', () => dart.functio nType(dart.dynamic, [dart.dynamic]));
947 let _MainFunctionArgsMessage = dart.typedef('_MainFunctionArgsMessage', () => dart.functionType(dart.dynamic, [dart.dynamic, dart.dynamic])); 947 const _MainFunctionArgsMessage = dart.typedef('_MainFunctionArgsMessage', () = > dart.functionType(dart.dynamic, [dart.dynamic, dart.dynamic]));
948 class IsolateNatives extends core.Object { 948 class IsolateNatives extends core.Object {
949 static computeThisScript() { 949 static computeThisScript() {
950 let currentScript = document.currentScript; 950 let currentScript = document.currentScript;
951 if (currentScript != null) { 951 if (currentScript != null) {
952 return String(currentScript.src); 952 return String(currentScript.src);
953 } 953 }
954 if (dart.notNull(_js_helper.Primitives.isD8)) 954 if (dart.notNull(_js_helper.Primitives.isD8))
955 return IsolateNatives.computeThisScriptD8(); 955 return IsolateNatives.computeThisScriptD8();
956 if (dart.notNull(_js_helper.Primitives.isJsshell)) 956 if (dart.notNull(_js_helper.Primitives.isJsshell))
957 return IsolateNatives.computeThisScriptJsshell(); 957 return IsolateNatives.computeThisScriptJsshell();
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
1242 IsolateNatives.enableSpawnWorker = null; 1242 IsolateNatives.enableSpawnWorker = null;
1243 dart.defineLazyProperties(IsolateNatives, { 1243 dart.defineLazyProperties(IsolateNatives, {
1244 get thisScript() { 1244 get thisScript() {
1245 return IsolateNatives.computeThisScript(); 1245 return IsolateNatives.computeThisScript();
1246 }, 1246 },
1247 set thisScript(_) {}, 1247 set thisScript(_) {},
1248 get workerIds() { 1248 get workerIds() {
1249 return new (core.Expando$(core.int))(); 1249 return new (core.Expando$(core.int))();
1250 } 1250 }
1251 }); 1251 });
1252 let _checkReplyTo = Symbol('_checkReplyTo'); 1252 const _checkReplyTo = Symbol('_checkReplyTo');
1253 class _BaseSendPort extends core.Object { 1253 class _BaseSendPort extends core.Object {
1254 _BaseSendPort(isolateId) { 1254 _BaseSendPort(isolateId) {
1255 this[_isolateId] = isolateId; 1255 this[_isolateId] = isolateId;
1256 } 1256 }
1257 [_checkReplyTo](replyTo) { 1257 [_checkReplyTo](replyTo) {
1258 if (replyTo != null && !dart.is(replyTo, _NativeJsSendPort) && !dart.is(re plyTo, _WorkerSendPort)) { 1258 if (replyTo != null && !dart.is(replyTo, _NativeJsSendPort) && !dart.is(re plyTo, _WorkerSendPort)) {
1259 dart.throw(core.Exception.new("SendPort.send: Illegal replyTo port type" )); 1259 dart.throw(core.Exception.new("SendPort.send: Illegal replyTo port type" ));
1260 } 1260 }
1261 } 1261 }
1262 } 1262 }
1263 _BaseSendPort[dart.implements] = () => [isolate.SendPort]; 1263 _BaseSendPort[dart.implements] = () => [isolate.SendPort];
1264 dart.setSignature(_BaseSendPort, { 1264 dart.setSignature(_BaseSendPort, {
1265 constructors: () => ({_BaseSendPort: [_BaseSendPort, [core.int]]}), 1265 constructors: () => ({_BaseSendPort: [_BaseSendPort, [core.int]]}),
1266 methods: () => ({[_checkReplyTo]: [dart.void, [isolate.SendPort]]}) 1266 methods: () => ({[_checkReplyTo]: [dart.void, [isolate.SendPort]]})
1267 }); 1267 });
1268 let _isClosed = Symbol('_isClosed'); 1268 const _isClosed = Symbol('_isClosed');
1269 let _add = Symbol('_add'); 1269 const _add = Symbol('_add');
1270 class _NativeJsSendPort extends _BaseSendPort { 1270 class _NativeJsSendPort extends _BaseSendPort {
1271 _NativeJsSendPort(receivePort, isolateId) { 1271 _NativeJsSendPort(receivePort, isolateId) {
1272 this[_receivePort] = receivePort; 1272 this[_receivePort] = receivePort;
1273 super._BaseSendPort(isolateId); 1273 super._BaseSendPort(isolateId);
1274 } 1274 }
1275 send(message) { 1275 send(message) {
1276 let isolate = exports._globalState.isolates.get(this[_isolateId]); 1276 let isolate = exports._globalState.isolates.get(this[_isolateId]);
1277 if (isolate == null) 1277 if (isolate == null)
1278 return; 1278 return;
1279 if (dart.notNull(this[_receivePort][_isClosed])) 1279 if (dart.notNull(this[_receivePort][_isClosed]))
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
1323 } 1323 }
1324 get hashCode() { 1324 get hashCode() {
1325 return dart.notNull(this[_workerId]) << 16 ^ dart.notNull(this[_isolateId] ) << 8 ^ dart.notNull(this[_receivePortId]); 1325 return dart.notNull(this[_workerId]) << 16 ^ dart.notNull(this[_isolateId] ) << 8 ^ dart.notNull(this[_receivePortId]);
1326 } 1326 }
1327 } 1327 }
1328 _WorkerSendPort[dart.implements] = () => [isolate.SendPort]; 1328 _WorkerSendPort[dart.implements] = () => [isolate.SendPort];
1329 dart.setSignature(_WorkerSendPort, { 1329 dart.setSignature(_WorkerSendPort, {
1330 constructors: () => ({_WorkerSendPort: [_WorkerSendPort, [core.int, core.int , core.int]]}), 1330 constructors: () => ({_WorkerSendPort: [_WorkerSendPort, [core.int, core.int , core.int]]}),
1331 methods: () => ({send: [dart.void, [dart.dynamic]]}) 1331 methods: () => ({send: [dart.void, [dart.dynamic]]})
1332 }); 1332 });
1333 let _handler = Symbol('_handler'); 1333 const _handler = Symbol('_handler');
1334 class RawReceivePortImpl extends core.Object { 1334 class RawReceivePortImpl extends core.Object {
1335 RawReceivePortImpl(handler) { 1335 RawReceivePortImpl(handler) {
1336 this[_handler] = handler; 1336 this[_handler] = handler;
1337 this[_id] = (() => { 1337 this[_id] = (() => {
1338 let x = RawReceivePortImpl._nextFreeId; 1338 let x = RawReceivePortImpl._nextFreeId;
1339 RawReceivePortImpl._nextFreeId = dart.notNull(x) + 1; 1339 RawReceivePortImpl._nextFreeId = dart.notNull(x) + 1;
1340 return x; 1340 return x;
1341 })(); 1341 })();
1342 this[_isClosed] = false; 1342 this[_isClosed] = false;
1343 exports._globalState.currentContext.register(this[_id], this); 1343 exports._globalState.currentContext.register(this[_id], this);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
1389 weak: [RawReceivePortImpl, [core.Function]], 1389 weak: [RawReceivePortImpl, [core.Function]],
1390 _controlPort: [RawReceivePortImpl, []] 1390 _controlPort: [RawReceivePortImpl, []]
1391 }), 1391 }),
1392 methods: () => ({ 1392 methods: () => ({
1393 [_close]: [dart.void, []], 1393 [_close]: [dart.void, []],
1394 close: [dart.void, []], 1394 close: [dart.void, []],
1395 [_add]: [dart.void, [dart.dynamic]] 1395 [_add]: [dart.void, [dart.dynamic]]
1396 }) 1396 })
1397 }); 1397 });
1398 RawReceivePortImpl._nextFreeId = 1; 1398 RawReceivePortImpl._nextFreeId = 1;
1399 let _rawPort = Symbol('_rawPort'); 1399 const _rawPort = Symbol('_rawPort');
1400 let _controller = Symbol('_controller'); 1400 const _controller = Symbol('_controller');
1401 class ReceivePortImpl extends async.Stream { 1401 class ReceivePortImpl extends async.Stream {
1402 ReceivePortImpl() { 1402 ReceivePortImpl() {
1403 this.fromRawReceivePort(new RawReceivePortImpl(null)); 1403 this.fromRawReceivePort(new RawReceivePortImpl(null));
1404 } 1404 }
1405 weak() { 1405 weak() {
1406 this.fromRawReceivePort(new RawReceivePortImpl.weak(null)); 1406 this.fromRawReceivePort(new RawReceivePortImpl.weak(null));
1407 } 1407 }
1408 fromRawReceivePort(rawPort) { 1408 fromRawReceivePort(rawPort) {
1409 this[_rawPort] = rawPort; 1409 this[_rawPort] = rawPort;
1410 this[_controller] = null; 1410 this[_controller] = null;
(...skipping 22 matching lines...) Expand all
1433 constructors: () => ({ 1433 constructors: () => ({
1434 ReceivePortImpl: [ReceivePortImpl, []], 1434 ReceivePortImpl: [ReceivePortImpl, []],
1435 weak: [ReceivePortImpl, []], 1435 weak: [ReceivePortImpl, []],
1436 fromRawReceivePort: [ReceivePortImpl, [isolate.RawReceivePort]] 1436 fromRawReceivePort: [ReceivePortImpl, [isolate.RawReceivePort]]
1437 }), 1437 }),
1438 methods: () => ({ 1438 methods: () => ({
1439 listen: [async.StreamSubscription, [dart.functionType(dart.void, [dart.dyn amic])], {onError: core.Function, onDone: dart.functionType(dart.void, []), canc elOnError: core.bool}], 1439 listen: [async.StreamSubscription, [dart.functionType(dart.void, [dart.dyn amic])], {onError: core.Function, onDone: dart.functionType(dart.void, []), canc elOnError: core.bool}],
1440 close: [dart.void, []] 1440 close: [dart.void, []]
1441 }) 1441 })
1442 }); 1442 });
1443 let _once = Symbol('_once'); 1443 const _once = Symbol('_once');
1444 let _inEventLoop = Symbol('_inEventLoop'); 1444 const _inEventLoop = Symbol('_inEventLoop');
1445 let _handle = Symbol('_handle'); 1445 const _handle = Symbol('_handle');
1446 class TimerImpl extends core.Object { 1446 class TimerImpl extends core.Object {
1447 TimerImpl(milliseconds, callback) { 1447 TimerImpl(milliseconds, callback) {
1448 this[_once] = true; 1448 this[_once] = true;
1449 this[_inEventLoop] = false; 1449 this[_inEventLoop] = false;
1450 this[_handle] = null; 1450 this[_handle] = null;
1451 if (milliseconds == 0 && (!dart.notNull(hasTimer()) || dart.notNull(export s._globalState.isWorker))) { 1451 if (milliseconds == 0 && (!dart.notNull(hasTimer()) || dart.notNull(export s._globalState.isWorker))) {
1452 let internalCallback = (function() { 1452 const internalCallback = (function() {
1453 this[_handle] = null; 1453 this[_handle] = null;
1454 callback(); 1454 callback();
1455 }).bind(this); 1455 }).bind(this);
1456 dart.fn(internalCallback, dart.void, []); 1456 dart.fn(internalCallback, dart.void, []);
1457 this[_handle] = 1; 1457 this[_handle] = 1;
1458 exports._globalState.topEventLoop.enqueue(exports._globalState.currentCo ntext, internalCallback, 'timer'); 1458 exports._globalState.topEventLoop.enqueue(exports._globalState.currentCo ntext, internalCallback, 'timer');
1459 this[_inEventLoop] = true; 1459 this[_inEventLoop] = true;
1460 } else if (dart.notNull(hasTimer())) { 1460 } else if (dart.notNull(hasTimer())) {
1461 let internalCallback = (function() { 1461 const internalCallback = (function() {
1462 this[_handle] = null; 1462 this[_handle] = null;
1463 leaveJsAsync(); 1463 leaveJsAsync();
1464 callback(); 1464 callback();
1465 }).bind(this); 1465 }).bind(this);
1466 dart.fn(internalCallback, dart.void, []); 1466 dart.fn(internalCallback, dart.void, []);
1467 enterJsAsync(); 1467 enterJsAsync();
1468 this[_handle] = self.setTimeout(internalCallback, milliseconds); 1468 this[_handle] = self.setTimeout(internalCallback, milliseconds);
1469 } else { 1469 } else {
1470 dart.assert(dart.notNull(milliseconds) > 0); 1470 dart.assert(dart.notNull(milliseconds) > 0);
1471 dart.throw(new core.UnsupportedError("Timer greater than 0.")); 1471 dart.throw(new core.UnsupportedError("Timer greater than 0."));
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
1560 exports.leaveJsAsync = leaveJsAsync; 1560 exports.leaveJsAsync = leaveJsAsync;
1561 exports.isWorker = isWorker; 1561 exports.isWorker = isWorker;
1562 exports.startRootIsolate = startRootIsolate; 1562 exports.startRootIsolate = startRootIsolate;
1563 exports.IsolateNatives = IsolateNatives; 1563 exports.IsolateNatives = IsolateNatives;
1564 exports.RawReceivePortImpl = RawReceivePortImpl; 1564 exports.RawReceivePortImpl = RawReceivePortImpl;
1565 exports.ReceivePortImpl = ReceivePortImpl; 1565 exports.ReceivePortImpl = ReceivePortImpl;
1566 exports.TimerImpl = TimerImpl; 1566 exports.TimerImpl = TimerImpl;
1567 exports.hasTimer = hasTimer; 1567 exports.hasTimer = hasTimer;
1568 exports.CapabilityImpl = CapabilityImpl; 1568 exports.CapabilityImpl = CapabilityImpl;
1569 }); 1569 });
OLDNEW
« no previous file with comments | « lib/runtime/dart/_internal.js ('k') | lib/runtime/dart/_js_embedded_names.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698