Revise internal array creation operations (#4291)

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu
This commit is contained in:
Robert Fancsik
2020-10-16 15:24:50 +02:00
committed by GitHub
parent 841d536fce
commit d8955552d7
18 changed files with 350 additions and 314 deletions
@@ -65,7 +65,13 @@ ecma_object_t *
ecma_op_new_array_object (uint32_t length);
ecma_object_t *
ecma_op_new_fast_array_object (uint32_t length);
ecma_op_new_array_object_from_length (ecma_length_t length);
ecma_value_t
ecma_op_new_array_object_from_buffer (const ecma_value_t *args_p, uint32_t length);
ecma_value_t
ecma_op_new_array_object_from_collection (ecma_collection_t *collection_p, bool unref_objects);
bool
ecma_op_object_is_fast_array (ecma_object_t *object_p);
@@ -95,12 +101,8 @@ ecma_fast_array_object_own_property_keys (ecma_object_t *object_p);
void
ecma_fast_array_convert_to_normal (ecma_object_t *object_p);
ecma_value_t
ecma_op_create_array_object (const ecma_value_t *arguments_list_p, uint32_t arguments_list_len,
bool is_treat_single_arg_as_length);
#if ENABLED (JERRY_ESNEXT)
ecma_value_t
ecma_object_t *
ecma_op_array_species_create (ecma_object_t *original_array_p,
ecma_length_t length);