OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 var $promiseCreate; | 5 var $promiseCreate; |
6 var $promiseResolve; | 6 var $promiseResolve; |
7 var $promiseReject; | 7 var $promiseReject; |
8 var $promiseChain; | 8 var $promiseChain; |
9 var $promiseCatch; | 9 var $promiseCatch; |
10 var $promiseThen; | 10 var $promiseThen; |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
182 function PromiseDeferred() { | 182 function PromiseDeferred() { |
183 if (this === GlobalPromise) { | 183 if (this === GlobalPromise) { |
184 // Optimized case, avoid extra closure. | 184 // Optimized case, avoid extra closure. |
185 var promise = PromiseInit(new GlobalPromise(promiseRaw)); | 185 var promise = PromiseInit(new GlobalPromise(promiseRaw)); |
186 return { | 186 return { |
187 promise: promise, | 187 promise: promise, |
188 resolve: function(x) { PromiseResolve(promise, x) }, | 188 resolve: function(x) { PromiseResolve(promise, x) }, |
189 reject: function(r) { PromiseReject(promise, r) } | 189 reject: function(r) { PromiseReject(promise, r) } |
190 }; | 190 }; |
191 } else { | 191 } else { |
192 var result = {}; | 192 var result = {__proto__: null}; |
rossberg
2015/06/29 16:05:53
This is visible in the public API (even if .defer
arv (Not doing code reviews)
2015/06/29 16:44:59
I'm fine doing that.
Where is the spec for this p
| |
193 result.promise = new this(function(resolve, reject) { | 193 result.promise = new this(function(resolve, reject) { |
194 result.resolve = resolve; | 194 result.resolve = resolve; |
195 result.reject = reject; | 195 result.reject = reject; |
196 }) | 196 }); |
197 return result; | 197 return result; |
198 } | 198 } |
199 } | 199 } |
200 | 200 |
201 function PromiseResolved(x) { | 201 function PromiseResolved(x) { |
202 if (this === GlobalPromise) { | 202 if (this === GlobalPromise) { |
203 // Optimized case, avoid extra closure. | 203 // Optimized case, avoid extra closure. |
204 return PromiseCreateAndSet(+1, x); | 204 return PromiseCreateAndSet(+1, x); |
205 } else { | 205 } else { |
206 return new this(function(resolve, reject) { resolve(x) }); | 206 return new this(function(resolve, reject) { resolve(x) }); |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
390 $promiseResolve = PromiseResolve; | 390 $promiseResolve = PromiseResolve; |
391 $promiseReject = PromiseReject; | 391 $promiseReject = PromiseReject; |
392 $promiseChain = PromiseChain; | 392 $promiseChain = PromiseChain; |
393 $promiseCatch = PromiseCatch; | 393 $promiseCatch = PromiseCatch; |
394 $promiseThen = PromiseThen; | 394 $promiseThen = PromiseThen; |
395 $promiseHasUserDefinedRejectHandler = PromiseHasUserDefinedRejectHandler; | 395 $promiseHasUserDefinedRejectHandler = PromiseHasUserDefinedRejectHandler; |
396 $promiseStatus = promiseStatus; | 396 $promiseStatus = promiseStatus; |
397 $promiseValue = promiseValue; | 397 $promiseValue = promiseValue; |
398 | 398 |
399 }) | 399 }) |
OLD | NEW |