Implement other routines of Promise (#1729)

Add Promise.resolve, Promise.reject, Promise.race, Promise.all and
Promise.prototype.catch

Also it fixes the issue 1763

JerryScript-DCO-1.0-Signed-off-by: Zidong Jiang zidong.jiang@intel.com
This commit is contained in:
Zidong Jiang
2017-04-26 19:47:51 +08:00
committed by GitHub
parent 9d4123c3c4
commit 078f6e101d
20 changed files with 1044 additions and 138 deletions
+17
View File
@@ -63,6 +63,11 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_UTC_U, "UTC")
#endif
#if !defined (CONFIG_DISABLE_MATH_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ABS, "abs")
#endif
#if !defined (CONFIG_DISABLE_ES2015_PROMISE_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ALL, "all")
#endif
#if !defined (CONFIG_DISABLE_MATH_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_COS, "cos")
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_EXP, "exp")
#endif
@@ -130,6 +135,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_NULL, "null")
#if !defined (CONFIG_DISABLE_ARRAY_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_PUSH, "push")
#endif
#if !defined (CONFIG_DISABLE_ES2015_PROMISE_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_RACE, "race")
#endif
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_SEAL, "seal")
#if !defined (CONFIG_DISABLE_ARRAY_BUILTIN) \
|| !defined (CONFIG_DISABLE_ES2015_TYPEDARRAY_BUILTIN)
@@ -161,6 +169,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_APPLY, "apply")
#if !defined (CONFIG_DISABLE_MATH_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ATAN2, "atan2")
#endif
#if !defined (CONFIG_DISABLE_ES2015_PROMISE_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_CATCH, "catch")
#endif
#if !defined (CONFIG_DISABLE_ARRAY_BUILTIN) \
|| !defined (CONFIG_DISABLE_ES2015_TYPEDARRAY_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_EVERY, "every")
@@ -244,6 +255,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_RANDOM, "random")
|| !defined (CONFIG_DISABLE_ES2015_TYPEDARRAY_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REDUCE, "reduce")
#endif
#if !defined (CONFIG_DISABLE_ES2015_PROMISE_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REJECT, "reject")
#endif
#if !defined (CONFIG_DISABLE_REGEXP_BUILTIN) && !defined (CONFIG_DISABLE_STRING_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_SEARCH, "search")
#endif
@@ -294,6 +308,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_MESSAGE, "message")
#if !defined (CONFIG_DISABLE_REGEXP_BUILTIN) && !defined (CONFIG_DISABLE_STRING_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REPLACE, "replace")
#endif
#if !defined (CONFIG_DISABLE_ES2015_PROMISE_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_RESOLVE, "resolve")
#endif
#if !defined (CONFIG_DISABLE_ARRAY_BUILTIN) \
|| !defined (CONFIG_DISABLE_ES2015_TYPEDARRAY_BUILTIN)
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REVERSE, "reverse")
+5
View File
@@ -47,6 +47,7 @@ LIT_MAGIC_STRING_LN2_U = "LN2"
LIT_MAGIC_STRING_NAN = "NaN"
LIT_MAGIC_STRING_UTC_U = "UTC"
LIT_MAGIC_STRING_ABS = "abs"
LIT_MAGIC_STRING_ALL = "all"
LIT_MAGIC_STRING_COS = "cos"
LIT_MAGIC_STRING_EXP = "exp"
LIT_MAGIC_STRING_GET = "get"
@@ -80,6 +81,7 @@ LIT_MAGIC_STRING_KEYS = "keys"
LIT_MAGIC_STRING_NAME = "name"
LIT_MAGIC_STRING_NULL = "null"
LIT_MAGIC_STRING_PUSH = "push"
LIT_MAGIC_STRING_RACE = "race"
LIT_MAGIC_STRING_SEAL = "seal"
LIT_MAGIC_STRING_SOME = "some"
LIT_MAGIC_STRING_SORT = "sort"
@@ -94,6 +96,7 @@ LIT_MAGIC_STRING_LOG2E_U = "LOG2E"
LIT_MAGIC_STRING_SQRT2_U = "SQRT2"
LIT_MAGIC_STRING_APPLY = "apply"
LIT_MAGIC_STRING_ATAN2 = "atan2"
LIT_MAGIC_STRING_CATCH = "catch"
LIT_MAGIC_STRING_EVERY = "every"
LIT_MAGIC_STRING_FALSE = "false"
LIT_MAGIC_STRING_FLOOR = "floor"
@@ -130,6 +133,7 @@ LIT_MAGIC_STRING_NUMBER = "number"
LIT_MAGIC_STRING_OBJECT = "object"
LIT_MAGIC_STRING_RANDOM = "random"
LIT_MAGIC_STRING_REDUCE = "reduce"
LIT_MAGIC_STRING_REJECT = "reject"
LIT_MAGIC_STRING_SEARCH = "search"
LIT_MAGIC_STRING_SOURCE = "source"
LIT_MAGIC_STRING_SPLICE = "splice"
@@ -149,6 +153,7 @@ LIT_MAGIC_STRING_INDEX_OF_UL = "indexOf"
LIT_MAGIC_STRING_IS_ARRAY_UL = "isArray"
LIT_MAGIC_STRING_MESSAGE = "message"
LIT_MAGIC_STRING_REPLACE = "replace"
LIT_MAGIC_STRING_RESOLVE = "resolve"
LIT_MAGIC_STRING_REVERSE = "reverse"
LIT_MAGIC_STRING_SET_DATE_UL = "setDate"
LIT_MAGIC_STRING_SET_TIME_UL = "setTime"