Update object.prototype.toString to conform ES11 standard (#4196)
JerryScript-DCO-1.0-Signed-off-by: bence gabor kis kisbg@inf.u-szeged.hu
This commit is contained in:
@@ -167,6 +167,18 @@ ecma_builtin_helper_object_to_string (const ecma_value_t this_arg) /**< this arg
|
||||
ecma_deref_object (obj_p);
|
||||
return ecma_builtin_helper_object_to_string_tag_helper (tag);
|
||||
}
|
||||
else if (builtin_tag != LIT_MAGIC_STRING_ARGUMENTS_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_FUNCTION_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_ERROR_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_BOOLEAN_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_NUMBER_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_STRING_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_DATE_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_REGEXP_UL
|
||||
&& builtin_tag != LIT_MAGIC_STRING_ARRAY_UL)
|
||||
{
|
||||
builtin_tag = LIT_MAGIC_STRING_OBJECT_UL;
|
||||
}
|
||||
|
||||
ecma_free_value (tag);
|
||||
#endif /* ENABLED (JERRY_ESNEXT) */
|
||||
|
||||
@@ -2670,6 +2670,19 @@ ecma_object_get_class_name (ecma_object_t *obj_p) /**< object */
|
||||
{
|
||||
return LIT_MAGIC_STRING_FUNCTION_UL;
|
||||
}
|
||||
#if ENABLED (JERRY_ESNEXT)
|
||||
case ECMA_OBJECT_TYPE_PROXY:
|
||||
{
|
||||
ecma_proxy_object_t *proxy_obj_p = (ecma_proxy_object_t *) obj_p;
|
||||
|
||||
if (!ecma_is_value_null (proxy_obj_p->target) && ecma_is_value_object (proxy_obj_p->target))
|
||||
{
|
||||
ecma_object_t *target_obj_p = ecma_get_object_from_value (proxy_obj_p->target);
|
||||
return ecma_object_get_class_name (target_obj_p);
|
||||
}
|
||||
return LIT_MAGIC_STRING_OBJECT_UL;
|
||||
}
|
||||
#endif /* ENABLED (JERRY_ESNEXT) */
|
||||
default:
|
||||
{
|
||||
JERRY_ASSERT (type == ECMA_OBJECT_TYPE_GENERAL || type == ECMA_OBJECT_TYPE_PROXY);
|
||||
|
||||
Reference in New Issue
Block a user