v8/test/mjsunit/harmony
rossberg@chromium.org e943623b12 Harmony promises
Based on prototype at

  https://github.com/rossberg-chromium/js-promise

which informed the latest spec draft version at

  https://github.com/domenic/promises-unwrapping/blob/master/README.md

Activated by --harmony-promises.

Feature complete with respect to the draft spec, plus the addition of .when and .deferred methods. Final naming and other possible deviations from the current draft will hopefully be resolved soon after the next TC39 meeting.

This CL also generalises the Object.observe delivery loop into a simplistic microtask loop. Currently, all observer events are delivered before invoking any promise handler in a single fixpoint iteration. It's not clear yet what the final semantics is supposed to be (should there be a global event ordering?), but it will probably require a more thorough event loop abstraction inside V8 once we get there.

R=dslomov@chromium.org, yhirano@chromium.org
BUG=

Review URL: https://codereview.chromium.org/64223010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-27 17:21:40 +00:00
..
array-find.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
array-findindex.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
array-iterator.js Update Array Iterator to use numeric indexes 2013-08-06 13:10:07 +00:00
block-conflicts.js
block-const-assign.js
block-early-errors.js
block-for.js
block-lazy-compile.js
block-leave.js
block-let-crankshaft.js Turn on parallel recompilation for tests that assert optimization status. 2013-07-22 09:16:33 +00:00
block-let-declaration.js
block-let-semantics.js
block-scoping.js
collections.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
dataview-accessors.js Fix data view accessors to throw execptions on offsets bigger than size_t. 2013-11-18 15:16:22 +00:00
debug-blockscopes.js
debug-evaluate-blockscopes.js
debug-function-scopes.js
generators-iteration.js Fix stack frame reconstruction for generators with formal arguments 2013-06-20 10:48:34 +00:00
generators-objects.js Generator object "next" method takes optional send value 2013-06-10 09:26:18 +00:00
generators-parsing.js Generator objects can suspend 2013-04-19 14:11:23 +00:00
generators-runtime.js GeneratorFunction() makes generator instances 2013-06-12 12:52:16 +00:00
iteration-semantics.js Harmony promises 2013-11-27 17:21:40 +00:00
iteration-syntax.js For-of statements do not permit initializers. 2013-06-12 12:37:44 +00:00
math-sign.js Harmony: implement Math.sign. 2013-10-21 09:16:31 +00:00
math-trunc.js Harmony: implement Math.trunc. 2013-10-21 11:15:11 +00:00
module-linking.js
module-parsing.js
module-recompile.js
module-resolution.js
numeric-literals-off.js Add support for explicit octal and binary integer literals 2013-07-19 09:57:35 +00:00
numeric-literals.js Add support for explicit octal and binary integer literals 2013-07-19 09:57:35 +00:00
object-observe.js Reland [Object.observe] Don't force normalization of elements for observed objects 2013-11-14 21:47:39 +00:00
private.js Speed up long-running test cases. 2013-11-26 11:32:39 +00:00
promises.js Harmony promises 2013-11-27 17:21:40 +00:00
proxies-example-membrane.js Calling Map etc without new should throw TypeError 2013-08-01 09:18:28 +00:00
proxies-for.js Proxies: Make 'with' work, plus minor other fixes 2013-07-19 14:07:23 +00:00
proxies-function.js
proxies-hash.js Calling Map etc without new should throw TypeError 2013-08-01 09:18:28 +00:00
proxies-json.js
proxies-symbols.js ES6 symbols: prevent reflection, proxy, and observe APIs from leaking symbols 2013-03-22 17:27:44 +00:00
proxies-with.js Proxies: Make 'with' work, plus minor other fixes 2013-07-19 14:07:23 +00:00
proxies.js
string-contains.js Add new Harmony methods to String.prototype object. 2013-07-30 16:33:08 +00:00
string-endswith.js Add new Harmony methods to String.prototype object. 2013-07-30 16:33:08 +00:00
string-repeat.js Make sure files end with exactly one new line and police this in presubmit. 2013-11-22 13:50:39 +00:00
string-startswith.js Add new Harmony methods to String.prototype object. 2013-07-30 16:33:08 +00:00
symbols.js Speed up long-running test cases. 2013-11-26 11:32:39 +00:00
typedarrays.js Implement ArrayBuffer.isView. 2013-10-10 08:36:44 +00:00
typeof.js