Implement new Reflect methods (#3549)
This patch implements the get, set, has, deleteProperty, ownKeys, and construct methods of the Reflect objects. The Reflect.construct method is missing the new_target support because ecma_op_function_construct doesn't support it yet. JerryScript-DCO-1.0-Signed-off-by: Daniella Barsony bella@inf.u-szeged.hu
This commit is contained in:
@@ -75,6 +75,7 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_FOR, "for")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_GET, "get")
|
||||
#if ENABLED (JERRY_ES2015_BUILTIN_MAP) \
|
||||
|| ENABLED (JERRY_ES2015_BUILTIN_REFLECT) \
|
||||
|| ENABLED (JERRY_ES2015_BUILTIN_SET) \
|
||||
|| ENABLED (JERRY_ES2015_BUILTIN_WEAKMAP) \
|
||||
|| ENABLED (JERRY_ES2015_BUILTIN_WEAKSET)
|
||||
@@ -419,6 +420,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_INDEX_OF_UL, "indexOf")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_IS_ARRAY_UL, "isArray")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_MESSAGE, "message")
|
||||
#if ENABLED (JERRY_ES2015_BUILTIN_REFLECT)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_OWN_KEYS_UL, "ownKeys")
|
||||
#endif
|
||||
#if ENABLED (JERRY_BUILTIN_REGEXP) && ENABLED (JERRY_BUILTIN_STRING) \
|
||||
|| ENABLED (JERRY_ES2015)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REPLACE, "replace")
|
||||
@@ -531,6 +535,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_TYPE_ERROR_UL, "TypeError")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_UNDEFINED_UL, "Undefined")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ARGUMENTS, "arguments")
|
||||
#if ENABLED (JERRY_ES2015_BUILTIN_REFLECT)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_CONSTRUCT, "construct")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_DECODE_URI, "decodeURI")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ENCODE_URI, "encodeURI")
|
||||
#if ENABLED (JERRY_ES2015) \
|
||||
@@ -739,6 +746,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ARRAY_ITERATOR_UL, "Array Iterator")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_REFERENCE_ERROR_UL, "ReferenceError")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_DEFINE_PROPERTY_UL, "defineProperty")
|
||||
#if ENABLED (JERRY_ES2015_BUILTIN_REFLECT)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_DELETE_PROPERTY_UL, "deleteProperty")
|
||||
#endif
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_GET_PROTOTYPE_OF_UL, "getPrototypeOf")
|
||||
#if ENABLED (JERRY_BUILTIN_DATE)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_GET_UTC_FULL_YEAR_UL, "getUTCFullYear")
|
||||
|
||||
@@ -171,6 +171,7 @@ LIT_MAGIC_STRING_GET_YEAR_UL = "getYear"
|
||||
LIT_MAGIC_STRING_INDEX_OF_UL = "indexOf"
|
||||
LIT_MAGIC_STRING_IS_ARRAY_UL = "isArray"
|
||||
LIT_MAGIC_STRING_MESSAGE = "message"
|
||||
LIT_MAGIC_STRING_OWN_KEYS_UL = "ownKeys"
|
||||
LIT_MAGIC_STRING_REPLACE = "replace"
|
||||
LIT_MAGIC_STRING_RESOLVE = "resolve"
|
||||
LIT_MAGIC_STRING_REVERSE = "reverse"
|
||||
@@ -214,6 +215,7 @@ LIT_MAGIC_STRING_UNESCAPE = "unescape"
|
||||
LIT_MAGIC_STRING_WRITABLE = "writable"
|
||||
LIT_MAGIC_STRING_NEGATIVE_INFINITY_UL = "-Infinity"
|
||||
LIT_MAGIC_STRING_ARGUMENTS_UL = "Arguments"
|
||||
LIT_MAGIC_STRING_CONSTRUCT = "construct"
|
||||
LIT_MAGIC_STRING_EVAL_ERROR_UL = "EvalError"
|
||||
LIT_MAGIC_STRING_INT8_ARRAY_UL = "Int8Array"
|
||||
LIT_MAGIC_STRING_IS_INTEGER = "isInteger"
|
||||
@@ -307,6 +309,7 @@ LIT_MAGIC_STRING_TO_EXPONENTIAL_UL = "toExponential"
|
||||
LIT_MAGIC_STRING_ARRAY_ITERATOR_UL = "Array Iterator"
|
||||
LIT_MAGIC_STRING_REFERENCE_ERROR_UL = "ReferenceError"
|
||||
LIT_MAGIC_STRING_DEFINE_PROPERTY_UL = "defineProperty"
|
||||
LIT_MAGIC_STRING_DELETE_PROPERTY_UL = "deleteProperty"
|
||||
LIT_MAGIC_STRING_GET_PROTOTYPE_OF_UL = "getPrototypeOf"
|
||||
LIT_MAGIC_STRING_GET_UTC_FULL_YEAR_UL = "getUTCFullYear"
|
||||
LIT_MAGIC_STRING_HAS_OWN_PROPERTY_UL = "hasOwnProperty"
|
||||
|
||||
Reference in New Issue
Block a user