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

Side by Side Diff: pkg/dev_compiler/tool/input_sdk/patch/isolate_patch.dart

Issue 2752163002: Format all dart dev compiler files (Closed)
Patch Set: Created 3 years, 9 months 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
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 // Patch file for the dart:isolate library. 5 // Patch file for the dart:isolate library.
6 6
7 import 'dart:_js_helper' show patch; 7 import 'dart:_js_helper' show patch;
8 import 'dart:_isolate_helper' show CapabilityImpl, 8 import 'dart:_isolate_helper'
9 IsolateNatives, 9 show CapabilityImpl, IsolateNatives, ReceivePortImpl, RawReceivePortImpl;
10 ReceivePortImpl,
11 RawReceivePortImpl;
12 10
13 typedef _UnaryFunction(arg); 11 typedef _UnaryFunction(arg);
14 12
15 @patch 13 @patch
16 class Isolate { 14 class Isolate {
17 static final _currentIsolateCache = IsolateNatives.currentIsolate; 15 static final _currentIsolateCache = IsolateNatives.currentIsolate;
18 16
19 // `current` must be a getter, not just a final field, 17 // `current` must be a getter, not just a final field,
20 // to match the external declaration. 18 // to match the external declaration.
21 @patch 19 @patch
(...skipping 12 matching lines...) Expand all
34 static Uri _packageBase = Uri.base.resolve(IsolateNatives.packagesBase); 32 static Uri _packageBase = Uri.base.resolve(IsolateNatives.packagesBase);
35 33
36 @patch 34 @patch
37 static Future<Uri> resolvePackageUri(Uri packageUri) async { 35 static Future<Uri> resolvePackageUri(Uri packageUri) async {
38 if (packageUri.scheme != 'package') return packageUri; 36 if (packageUri.scheme != 'package') return packageUri;
39 return _packageBase.resolveUri(packageUri.replace(scheme: '')); 37 return _packageBase.resolveUri(packageUri.replace(scheme: ''));
40 } 38 }
41 39
42 @patch 40 @patch
43 static Future<Isolate> spawn(void entryPoint(message), var message, 41 static Future<Isolate> spawn(void entryPoint(message), var message,
44 {bool paused: false, bool errorsAreFatal, 42 {bool paused: false,
45 SendPort onExit, SendPort onError}) { 43 bool errorsAreFatal,
46 bool forcePause = (errorsAreFatal != null) || 44 SendPort onExit,
47 (onExit != null) || 45 SendPort onError}) {
48 (onError != null); 46 bool forcePause =
47 (errorsAreFatal != null) || (onExit != null) || (onError != null);
49 try { 48 try {
50 // Check for the type of `entryPoint` on the spawning isolate to make 49 // Check for the type of `entryPoint` on the spawning isolate to make
51 // error-handling easier. 50 // error-handling easier.
52 if (entryPoint is! _UnaryFunction) { 51 if (entryPoint is! _UnaryFunction) {
53 throw new ArgumentError(entryPoint); 52 throw new ArgumentError(entryPoint);
54 } 53 }
55 // TODO: Consider passing the errorsAreFatal/onExit/onError values 54 // TODO: Consider passing the errorsAreFatal/onExit/onError values
56 // as arguments to the internal spawnUri instead of setting 55 // as arguments to the internal spawnUri instead of setting
57 // them after the isolate has been created. 56 // them after the isolate has been created.
58 return IsolateNatives.spawnFunction(entryPoint, message, 57 return IsolateNatives
59 paused || forcePause) 58 .spawnFunction(entryPoint, message, paused || forcePause)
60 .then((msg) { 59 .then((msg) {
61 var isolate = new Isolate(msg[1], 60 var isolate = new Isolate(msg[1],
62 pauseCapability: msg[2], 61 pauseCapability: msg[2], terminateCapability: msg[3]);
63 terminateCapability: msg[3]); 62 if (forcePause) {
64 if (forcePause) { 63 if (errorsAreFatal != null) {
65 if (errorsAreFatal != null) { 64 isolate.setErrorsFatal(errorsAreFatal);
66 isolate.setErrorsFatal(errorsAreFatal); 65 }
67 } 66 if (onExit != null) {
68 if (onExit != null) { 67 isolate.addOnExitListener(onExit);
69 isolate.addOnExitListener(onExit); 68 }
70 } 69 if (onError != null) {
71 if (onError != null) { 70 isolate.addErrorListener(onError);
72 isolate.addErrorListener(onError); 71 }
73 } 72 if (!paused) {
74 if (!paused) { 73 isolate.resume(isolate.pauseCapability);
75 isolate.resume(isolate.pauseCapability); 74 }
76 } 75 }
77 } 76 return isolate;
78 return isolate; 77 });
79 });
80 } catch (e, st) { 78 } catch (e, st) {
81 return new Future<Isolate>.error(e, st); 79 return new Future<Isolate>.error(e, st);
82 } 80 }
83 } 81 }
84 82
85 @patch 83 @patch
86 static Future<Isolate> spawnUri( 84 static Future<Isolate> spawnUri(Uri uri, List<String> args, var message,
87 Uri uri, List<String> args, var message,
88 {bool paused: false, 85 {bool paused: false,
89 SendPort onExit, 86 SendPort onExit,
90 SendPort onError, 87 SendPort onError,
91 bool errorsAreFatal, 88 bool errorsAreFatal,
92 bool checked, 89 bool checked,
93 Map<String, String> environment, 90 Map<String, String> environment,
94 Uri packageRoot, 91 Uri packageRoot,
95 Uri packageConfig, 92 Uri packageConfig,
96 bool automaticPackageResolution: false}) { 93 bool automaticPackageResolution: false}) {
97 if (environment != null) throw new UnimplementedError("environment"); 94 if (environment != null) throw new UnimplementedError("environment");
98 if (packageRoot != null) throw new UnimplementedError("packageRoot"); 95 if (packageRoot != null) throw new UnimplementedError("packageRoot");
99 if (packageConfig != null) throw new UnimplementedError("packageConfig"); 96 if (packageConfig != null) throw new UnimplementedError("packageConfig");
100 // TODO(lrn): Figure out how to handle the automaticPackageResolution 97 // TODO(lrn): Figure out how to handle the automaticPackageResolution
101 // parameter. 98 // parameter.
102 bool forcePause = (errorsAreFatal != null) || 99 bool forcePause =
103 (onExit != null) || 100 (errorsAreFatal != null) || (onExit != null) || (onError != null);
104 (onError != null);
105 try { 101 try {
106 if (args is List<String>) { 102 if (args is List<String>) {
107 for (int i = 0; i < args.length; i++) { 103 for (int i = 0; i < args.length; i++) {
108 if (args[i] is! String) { 104 if (args[i] is! String) {
109 throw new ArgumentError("Args must be a list of Strings $args"); 105 throw new ArgumentError("Args must be a list of Strings $args");
110 } 106 }
111 } 107 }
112 } else if (args != null) { 108 } else if (args != null) {
113 throw new ArgumentError("Args must be a list of Strings $args"); 109 throw new ArgumentError("Args must be a list of Strings $args");
114 } 110 }
115 // TODO: Handle [packageRoot] somehow, possibly by throwing. 111 // TODO: Handle [packageRoot] somehow, possibly by throwing.
116 // TODO: Consider passing the errorsAreFatal/onExit/onError values 112 // TODO: Consider passing the errorsAreFatal/onExit/onError values
117 // as arguments to the internal spawnUri instead of setting 113 // as arguments to the internal spawnUri instead of setting
118 // them after the isolate has been created. 114 // them after the isolate has been created.
119 return IsolateNatives.spawnUri(uri, args, message, paused || forcePause) 115 return IsolateNatives
116 .spawnUri(uri, args, message, paused || forcePause)
120 .then((msg) { 117 .then((msg) {
121 var isolate = new Isolate(msg[1], 118 var isolate = new Isolate(msg[1],
122 pauseCapability: msg[2], 119 pauseCapability: msg[2], terminateCapability: msg[3]);
123 terminateCapability: msg[3]); 120 if (forcePause) {
124 if (forcePause) { 121 if (errorsAreFatal != null) {
125 if (errorsAreFatal != null) { 122 isolate.setErrorsFatal(errorsAreFatal);
126 isolate.setErrorsFatal(errorsAreFatal); 123 }
127 } 124 if (onExit != null) {
128 if (onExit != null) { 125 isolate.addOnExitListener(onExit);
129 isolate.addOnExitListener(onExit); 126 }
130 } 127 if (onError != null) {
131 if (onError != null) { 128 isolate.addErrorListener(onError);
132 isolate.addErrorListener(onError); 129 }
133 } 130 if (!paused) {
134 if (!paused) { 131 isolate.resume(isolate.pauseCapability);
135 isolate.resume(isolate.pauseCapability); 132 }
136 } 133 }
137 } 134 return isolate;
138 return isolate; 135 });
139 });
140 } catch (e, st) { 136 } catch (e, st) {
141 return new Future<Isolate>.error(e, st); 137 return new Future<Isolate>.error(e, st);
142 } 138 }
143 } 139 }
144 140
145 @patch 141 @patch
146 void _pause(Capability resumeCapability) { 142 void _pause(Capability resumeCapability) {
147 var message = new List(3) 143 var message = new List(3)
148 ..[0] = "pause" 144 ..[0] = "pause"
149 ..[1] = pauseCapability 145 ..[1] = pauseCapability
150 ..[2] = resumeCapability; 146 ..[2] = resumeCapability;
151 controlPort.send(message); 147 controlPort.send(message);
152 } 148 }
153 149
154 @patch 150 @patch
155 void resume(Capability resumeCapability) { 151 void resume(Capability resumeCapability) {
156 var message = new List(2) 152 var message = new List(2)
157 ..[0] = "resume" 153 ..[0] = "resume"
158 ..[1] = resumeCapability; 154 ..[1] = resumeCapability;
159 controlPort.send(message); 155 controlPort.send(message);
160 } 156 }
161 157
162 @patch 158 @patch
163 void addOnExitListener(SendPort responsePort, {Object response}) { 159 void addOnExitListener(SendPort responsePort, {Object response}) {
164 // TODO(lrn): Can we have an internal method that checks if the receiving 160 // TODO(lrn): Can we have an internal method that checks if the receiving
165 // isolate of a SendPort is still alive? 161 // isolate of a SendPort is still alive?
166 var message = new List(3) 162 var message = new List(3)
167 ..[0] = "add-ondone" 163 ..[0] = "add-ondone"
168 ..[1] = responsePort 164 ..[1] = responsePort
169 ..[2] = response; 165 ..[2] = response;
170 controlPort.send(message); 166 controlPort.send(message);
171 } 167 }
172 168
173 @patch 169 @patch
174 void removeOnExitListener(SendPort responsePort) { 170 void removeOnExitListener(SendPort responsePort) {
175 var message = new List(2) 171 var message = new List(2)
176 ..[0] = "remove-ondone" 172 ..[0] = "remove-ondone"
177 ..[1] = responsePort; 173 ..[1] = responsePort;
178 controlPort.send(message); 174 controlPort.send(message);
179 } 175 }
180 176
181 @patch 177 @patch
182 void setErrorsFatal(bool errorsAreFatal) { 178 void setErrorsFatal(bool errorsAreFatal) {
183 var message = new List(3) 179 var message = new List(3)
184 ..[0] = "set-errors-fatal" 180 ..[0] = "set-errors-fatal"
185 ..[1] = terminateCapability 181 ..[1] = terminateCapability
186 ..[2] = errorsAreFatal; 182 ..[2] = errorsAreFatal;
187 controlPort.send(message); 183 controlPort.send(message);
188 } 184 }
189 185
190 @patch 186 @patch
191 void kill({int priority: BEFORE_NEXT_EVENT}) { 187 void kill({int priority: BEFORE_NEXT_EVENT}) {
192 controlPort.send(["kill", terminateCapability, priority]); 188 controlPort.send(["kill", terminateCapability, priority]);
193 } 189 }
194 190
195 @patch 191 @patch
196 void ping(SendPort responsePort, {Object response, 192 void ping(SendPort responsePort, {Object response, int priority: IMMEDIATE}) {
197 int priority: IMMEDIATE}) {
198 var message = new List(4) 193 var message = new List(4)
199 ..[0] = "ping" 194 ..[0] = "ping"
200 ..[1] = responsePort 195 ..[1] = responsePort
201 ..[2] = priority 196 ..[2] = priority
202 ..[3] = response; 197 ..[3] = response;
203 controlPort.send(message); 198 controlPort.send(message);
204 } 199 }
205 200
206 @patch 201 @patch
207 void addErrorListener(SendPort port) { 202 void addErrorListener(SendPort port) {
208 var message = new List(2) 203 var message = new List(2)
209 ..[0] = "getErrors" 204 ..[0] = "getErrors"
210 ..[1] = port; 205 ..[1] = port;
211 controlPort.send(message); 206 controlPort.send(message);
212 } 207 }
213 208
214 @patch 209 @patch
215 void removeErrorListener(SendPort port) { 210 void removeErrorListener(SendPort port) {
216 var message = new List(2) 211 var message = new List(2)
217 ..[0] = "stopErrors" 212 ..[0] = "stopErrors"
218 ..[1] = port; 213 ..[1] = port;
219 controlPort.send(message); 214 controlPort.send(message);
220 } 215 }
221 } 216 }
222 217
223 /** Default factory for receive ports. */ 218 /** Default factory for receive ports. */
224 @patch 219 @patch
225 class ReceivePort { 220 class ReceivePort {
226 @patch 221 @patch
227 factory ReceivePort() = ReceivePortImpl; 222 factory ReceivePort() = ReceivePortImpl;
228 223
229 @patch 224 @patch
230 factory ReceivePort.fromRawReceivePort(RawReceivePort rawPort) { 225 factory ReceivePort.fromRawReceivePort(RawReceivePort rawPort) {
231 return new ReceivePortImpl.fromRawReceivePort(rawPort); 226 return new ReceivePortImpl.fromRawReceivePort(rawPort);
232 } 227 }
233 } 228 }
234 229
235 @patch 230 @patch
236 class RawReceivePort { 231 class RawReceivePort {
237 @patch 232 @patch
238 factory RawReceivePort([void handler(event)]) { 233 factory RawReceivePort([void handler(event)]) {
239 return new RawReceivePortImpl(handler); 234 return new RawReceivePortImpl(handler);
240 } 235 }
241 } 236 }
242 237
243 @patch 238 @patch
244 class Capability { 239 class Capability {
245 @patch 240 @patch
246 factory Capability() = CapabilityImpl; 241 factory Capability() = CapabilityImpl;
247 } 242 }
OLDNEW
« no previous file with comments | « pkg/dev_compiler/tool/input_sdk/patch/io_patch.dart ('k') | pkg/dev_compiler/tool/input_sdk/patch/math_patch.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698