OLD | NEW |
1 var isolate; | 1 var isolate; |
2 (function(exports) { | 2 (function(exports) { |
3 'use strict'; | 3 'use strict'; |
4 class Capability extends core.Object { | 4 class Capability extends core.Object { |
5 Capability() { | 5 Capability() { |
6 return new _isolate_helper.CapabilityImpl(); | 6 return new _isolate_helper.CapabilityImpl(); |
7 } | 7 } |
8 } | 8 } |
9 class IsolateSpawnException extends core.Object { | 9 class IsolateSpawnException extends core.Object { |
10 IsolateSpawnException(message) { | 10 IsolateSpawnException(message) { |
(...skipping 13 matching lines...) Expand all Loading... |
24 this.controlPort = controlPort; | 24 this.controlPort = controlPort; |
25 this.pauseCapability = pauseCapability; | 25 this.pauseCapability = pauseCapability; |
26 this.terminateCapability = terminateCapability; | 26 this.terminateCapability = terminateCapability; |
27 } | 27 } |
28 static get current() { | 28 static get current() { |
29 return Isolate[_currentIsolateCache]; | 29 return Isolate[_currentIsolateCache]; |
30 } | 30 } |
31 static spawn(entryPoint, message, opts) { | 31 static spawn(entryPoint, message, opts) { |
32 let paused = opts && 'paused' in opts ? opts.paused : false; | 32 let paused = opts && 'paused' in opts ? opts.paused : false; |
33 try { | 33 try { |
34 return dart.as(_isolate_helper.IsolateNatives.spawnFunction(entryPoint,
message, paused).then(dart.as(msg => new Isolate(dart.as(dart.dindex(msg, 1), Se
ndPort), {pauseCapability: dart.as(dart.dindex(msg, 2), Capability), terminateCa
pability: dart.as(dart.dindex(msg, 3), Capability)}), dart.functionType(dart.dyn
amic, [core.List]))), async.Future$(Isolate)); | 34 return dart.as(_isolate_helper.IsolateNatives.spawnFunction(entryPoint,
message, paused).then(msg => new Isolate(dart.as(dart.dindex(msg, 1), SendPort),
{pauseCapability: dart.as(dart.dindex(msg, 2), Capability), terminateCapability
: dart.as(dart.dindex(msg, 3), Capability)})), async.Future$(Isolate)); |
35 } catch (e) { | 35 } catch (e) { |
36 let st = dart.stackTrace(e); | 36 let st = dart.stackTrace(e); |
37 return new async.Future$(Isolate).error(e, st); | 37 return new async.Future$(Isolate).error(e, st); |
38 } | 38 } |
39 | 39 |
40 } | 40 } |
41 static spawnUri(uri, args, message, opts) { | 41 static spawnUri(uri, args, message, opts) { |
42 let paused = opts && 'paused' in opts ? opts.paused : false; | 42 let paused = opts && 'paused' in opts ? opts.paused : false; |
43 let packageRoot = opts && 'packageRoot' in opts ? opts.packageRoot : null; | 43 let packageRoot = opts && 'packageRoot' in opts ? opts.packageRoot : null; |
44 if (packageRoot != null) | 44 if (packageRoot != null) |
45 throw new core.UnimplementedError("packageRoot"); | 45 throw new core.UnimplementedError("packageRoot"); |
46 try { | 46 try { |
47 if (dart.is(args, core.List$(core.String))) { | 47 if (dart.is(args, core.List$(core.String))) { |
48 for (let i = 0; dart.notNull(i) < dart.notNull(args[core.$length]); i
= dart.notNull(i) + 1) { | 48 for (let i = 0; dart.notNull(i) < dart.notNull(args[core.$length]); i
= dart.notNull(i) + 1) { |
49 if (!(typeof args[core.$get](i) == 'string')) { | 49 if (!(typeof args[core.$get](i) == 'string')) { |
50 throw new core.ArgumentError(`Args must be a list of Strings ${arg
s}`); | 50 throw new core.ArgumentError(`Args must be a list of Strings ${arg
s}`); |
51 } | 51 } |
52 } | 52 } |
53 } else if (args != null) { | 53 } else if (args != null) { |
54 throw new core.ArgumentError(`Args must be a list of Strings ${args}`)
; | 54 throw new core.ArgumentError(`Args must be a list of Strings ${args}`)
; |
55 } | 55 } |
56 return dart.as(_isolate_helper.IsolateNatives.spawnUri(uri, args, messag
e, paused).then(dart.as(msg => new Isolate(dart.as(dart.dindex(msg, 1), SendPort
), {pauseCapability: dart.as(dart.dindex(msg, 2), Capability), terminateCapabili
ty: dart.as(dart.dindex(msg, 3), Capability)}), dart.functionType(dart.dynamic,
[core.List]))), async.Future$(Isolate)); | 56 return dart.as(_isolate_helper.IsolateNatives.spawnUri(uri, args, messag
e, paused).then(msg => new Isolate(dart.as(dart.dindex(msg, 1), SendPort), {paus
eCapability: dart.as(dart.dindex(msg, 2), Capability), terminateCapability: dart
.as(dart.dindex(msg, 3), Capability)})), async.Future$(Isolate)); |
57 } catch (e) { | 57 } catch (e) { |
58 let st = dart.stackTrace(e); | 58 let st = dart.stackTrace(e); |
59 return new async.Future$(Isolate).error(e, st); | 59 return new async.Future$(Isolate).error(e, st); |
60 } | 60 } |
61 | 61 |
62 } | 62 } |
63 pause(resumeCapability) { | 63 pause(resumeCapability) { |
64 if (resumeCapability === void 0) | 64 if (resumeCapability === void 0) |
65 resumeCapability = null; | 65 resumeCapability = null; |
66 if (resumeCapability == null) | 66 if (resumeCapability == null) |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 _RemoteStackTrace[dart.implements] = () => [core.StackTrace]; | 212 _RemoteStackTrace[dart.implements] = () => [core.StackTrace]; |
213 // Exports: | 213 // Exports: |
214 exports.Capability = Capability; | 214 exports.Capability = Capability; |
215 exports.IsolateSpawnException = IsolateSpawnException; | 215 exports.IsolateSpawnException = IsolateSpawnException; |
216 exports.Isolate = Isolate; | 216 exports.Isolate = Isolate; |
217 exports.SendPort = SendPort; | 217 exports.SendPort = SendPort; |
218 exports.ReceivePort = ReceivePort; | 218 exports.ReceivePort = ReceivePort; |
219 exports.RawReceivePort = RawReceivePort; | 219 exports.RawReceivePort = RawReceivePort; |
220 exports.RemoteError = RemoteError; | 220 exports.RemoteError = RemoteError; |
221 })(isolate || (isolate = {})); | 221 })(isolate || (isolate = {})); |
OLD | NEW |