diff options
Diffstat (limited to 'jerry-core/include')
-rw-r--r-- | jerry-core/include/jerryscript-compiler.h | 44 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-core.h | 112 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-debugger-transport.h | 23 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-debugger.h | 16 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-port.h | 23 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-snapshot.h | 37 | ||||
-rw-r--r-- | jerry-core/include/jerryscript-types.h | 257 |
7 files changed, 251 insertions, 261 deletions
diff --git a/jerry-core/include/jerryscript-compiler.h b/jerry-core/include/jerryscript-compiler.h index 0d3339c5..90832f8c 100644 --- a/jerry-core/include/jerryscript-compiler.h +++ b/jerry-core/include/jerryscript-compiler.h @@ -17,10 +17,15 @@ #define JERRYSCRIPT_COMPILER_H #ifdef __cplusplus -extern "C" -{ +#define JERRY_C_API_BEGIN extern "C" { +#define JERRY_C_API_END } +#else /* !__cplusplus */ +#define JERRY_C_API_BEGIN +#define JERRY_C_API_END #endif /* __cplusplus */ +JERRY_C_API_BEGIN + /** \addtogroup jerry-compiler Jerry compiler compatibility components * @{ */ @@ -30,23 +35,23 @@ extern "C" /* * Compiler-specific macros relevant for GCC. */ -#define JERRY_ATTR_ALIGNED(ALIGNMENT) __attribute__((aligned(ALIGNMENT))) -#define JERRY_ATTR_ALWAYS_INLINE __attribute__((always_inline)) -#define JERRY_ATTR_CONST __attribute__((const)) -#define JERRY_ATTR_DEPRECATED __attribute__((deprecated)) -#define JERRY_ATTR_FORMAT(...) __attribute__((format(__VA_ARGS__))) -#define JERRY_ATTR_HOT __attribute__((hot)) -#define JERRY_ATTR_NOINLINE __attribute__((noinline)) -#define JERRY_ATTR_NORETURN __attribute__((noreturn)) -#define JERRY_ATTR_PURE __attribute__((pure)) -#define JERRY_ATTR_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) +#define JERRY_ATTR_ALIGNED(ALIGNMENT) __attribute__ ((aligned (ALIGNMENT))) +#define JERRY_ATTR_ALWAYS_INLINE __attribute__ ((always_inline)) +#define JERRY_ATTR_CONST __attribute__ ((const)) +#define JERRY_ATTR_DEPRECATED __attribute__ ((deprecated)) +#define JERRY_ATTR_FORMAT(...) __attribute__ ((format (__VA_ARGS__))) +#define JERRY_ATTR_HOT __attribute__ ((hot)) +#define JERRY_ATTR_NOINLINE __attribute__ ((noinline)) +#define JERRY_ATTR_NORETURN __attribute__ ((noreturn)) +#define JERRY_ATTR_PURE __attribute__ ((pure)) +#define JERRY_ATTR_WARN_UNUSED_RESULT __attribute__ ((warn_unused_result)) #ifndef JERRY_LIKELY -#define JERRY_LIKELY(x) __builtin_expect(!!(x), 1) +#define JERRY_LIKELY(x) __builtin_expect (!!(x), 1) #endif /* !JERRY_LIKELY */ #ifndef JERRY_UNLIKELY -#define JERRY_UNLIKELY(x) __builtin_expect(!!(x), 0) +#define JERRY_UNLIKELY(x) __builtin_expect (!!(x), 0) #endif /* !JERRY_UNLIKELY */ #endif /* __GNUC__ */ @@ -57,14 +62,14 @@ extern "C" * Compiler-specific macros relevant for Microsoft Visual C/C++ Compiler. */ #define JERRY_ATTR_DEPRECATED __declspec(deprecated) -#define JERRY_ATTR_NOINLINE __declspec(noinline) -#define JERRY_ATTR_NORETURN __declspec(noreturn) +#define JERRY_ATTR_NOINLINE __declspec(noinline) +#define JERRY_ATTR_NORETURN __declspec(noreturn) /* * Microsoft Visual C/C++ Compiler doesn't support for VLA, using _alloca * instead. */ -void * __cdecl _alloca (size_t _Size); +void *__cdecl _alloca (size_t _Size); #define JERRY_VLA(type, name, size) type *name = (type *) (_alloca (sizeof (type) * size)) #endif /* _MSC_VER */ @@ -174,7 +179,6 @@ void * __cdecl _alloca (size_t _Size); * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_COMPILER_H */ diff --git a/jerry-core/include/jerryscript-core.h b/jerry-core/include/jerryscript-core.h index 2490cd80..59bef3a4 100644 --- a/jerry-core/include/jerryscript-core.h +++ b/jerry-core/include/jerryscript-core.h @@ -18,10 +18,7 @@ #include "jerryscript-types.h" -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +JERRY_C_API_BEGIN /** \addtogroup jerry Jerry engine interface * @{ @@ -32,7 +29,7 @@ extern "C" */ void jerry_init (jerry_init_flag_t flags); void jerry_cleanup (void); -void jerry_register_magic_strings (const jerry_char_t * const *ex_str_items_p, +void jerry_register_magic_strings (const jerry_char_t *const *ex_str_items_p, uint32_t count, const jerry_length_t *str_lengths_p); void jerry_gc (jerry_gc_mode_t mode); @@ -44,8 +41,7 @@ bool jerry_get_memory_stats (jerry_heap_stats_t *out_stats_p); * Parser and executor functions. */ bool jerry_run_simple (const jerry_char_t *script_source_p, size_t script_source_size, jerry_init_flag_t flags); -jerry_value_t jerry_parse (const jerry_char_t *source_p, size_t source_size, - const jerry_parse_options_t *options_p); +jerry_value_t jerry_parse (const jerry_char_t *source_p, size_t source_size, const jerry_parse_options_t *options_p); jerry_value_t jerry_parse_value (const jerry_value_t source_value, const jerry_parse_options_t *options_p); jerry_value_t jerry_run (const jerry_value_t func_val); jerry_value_t jerry_eval (const jerry_char_t *source_p, size_t source_size, uint32_t parse_opts); @@ -92,9 +88,7 @@ bool jerry_is_feature_enabled (const jerry_feature_t feature); /** * Binary operations */ -jerry_value_t jerry_binary_operation (jerry_binary_operation_t op, - const jerry_value_t lhs, - const jerry_value_t rhs); +jerry_value_t jerry_binary_operation (jerry_binary_operation_t op, const jerry_value_t lhs, const jerry_value_t rhs); /** * Error manipulation functions. @@ -125,9 +119,8 @@ jerry_size_t jerry_get_utf8_string_size (const jerry_value_t value); jerry_length_t jerry_get_string_length (const jerry_value_t value); jerry_length_t jerry_get_utf8_string_length (const jerry_value_t value); jerry_size_t jerry_string_to_char_buffer (const jerry_value_t value, jerry_char_t *buffer_p, jerry_size_t buffer_size); -jerry_size_t jerry_string_to_utf8_char_buffer (const jerry_value_t value, - jerry_char_t *buffer_p, - jerry_size_t buffer_size); +jerry_size_t +jerry_string_to_utf8_char_buffer (const jerry_value_t value, jerry_char_t *buffer_p, jerry_size_t buffer_size); jerry_size_t jerry_substring_to_char_buffer (const jerry_value_t value, jerry_length_t start_pos, jerry_length_t end_pos, @@ -175,8 +168,8 @@ void jerry_release_value (jerry_value_t value); jerry_value_t jerry_create_array (uint32_t size); jerry_value_t jerry_create_boolean (bool value); jerry_value_t jerry_create_error (jerry_error_t error_type, const jerry_char_t *message_p); -jerry_value_t jerry_create_error_sz (jerry_error_t error_type, const jerry_char_t *message_p, - jerry_size_t message_size); +jerry_value_t +jerry_create_error_sz (jerry_error_t error_type, const jerry_char_t *message_p, jerry_size_t message_size); jerry_value_t jerry_create_external_function (jerry_external_handler_t handler_p); jerry_value_t jerry_create_number (double value); jerry_value_t jerry_create_number_infinity (bool sign); @@ -185,8 +178,7 @@ jerry_value_t jerry_create_null (void); jerry_value_t jerry_create_object (void); jerry_value_t jerry_create_promise (void); jerry_value_t jerry_create_proxy (const jerry_value_t target, const jerry_value_t handler); -jerry_value_t jerry_create_special_proxy (const jerry_value_t target, const jerry_value_t handler, - uint32_t options); +jerry_value_t jerry_create_special_proxy (const jerry_value_t target, const jerry_value_t handler, uint32_t options); jerry_value_t jerry_create_regexp (const jerry_char_t *pattern, uint16_t flags); jerry_value_t jerry_create_regexp_sz (const jerry_char_t *pattern, jerry_size_t pattern_size, uint16_t flags); jerry_value_t jerry_create_string_from_utf8 (const jerry_char_t *str_p); @@ -212,14 +204,17 @@ bool jerry_delete_internal_property (const jerry_value_t obj_val, const jerry_va jerry_value_t jerry_get_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val); jerry_value_t jerry_get_property_by_index (const jerry_value_t obj_val, uint32_t index); -jerry_value_t jerry_get_own_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val, - const jerry_value_t receiver_val, bool *found_p); +jerry_value_t jerry_get_own_property (const jerry_value_t obj_val, + const jerry_value_t prop_name_val, + const jerry_value_t receiver_val, + bool *found_p); jerry_value_t jerry_get_internal_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val); -jerry_value_t jerry_set_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val, - const jerry_value_t value_to_set); -jerry_value_t jerry_set_property_by_index (const jerry_value_t obj_val, uint32_t index, - const jerry_value_t value_to_set); -bool jerry_set_internal_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val, +jerry_value_t +jerry_set_property (const jerry_value_t obj_val, const jerry_value_t prop_name_val, const jerry_value_t value_to_set); +jerry_value_t +jerry_set_property_by_index (const jerry_value_t obj_val, uint32_t index, const jerry_value_t value_to_set); +bool jerry_set_internal_property (const jerry_value_t obj_val, + const jerry_value_t prop_name_val, const jerry_value_t value_to_set); jerry_property_descriptor_t jerry_property_descriptor_create (void); @@ -232,10 +227,12 @@ jerry_value_t jerry_get_own_property_descriptor (const jerry_value_t obj_val, jerry_property_descriptor_t *prop_desc_p); void jerry_property_descriptor_free (const jerry_property_descriptor_t *prop_desc_p); -jerry_value_t jerry_call_function (const jerry_value_t func_obj_val, const jerry_value_t this_val, - const jerry_value_t args_p[], jerry_size_t args_count); -jerry_value_t jerry_construct_object (const jerry_value_t func_obj_val, const jerry_value_t args_p[], - jerry_size_t args_count); +jerry_value_t jerry_call_function (const jerry_value_t func_obj_val, + const jerry_value_t this_val, + const jerry_value_t args_p[], + jerry_size_t args_count); +jerry_value_t +jerry_construct_object (const jerry_value_t func_obj_val, const jerry_value_t args_p[], jerry_size_t args_count); jerry_value_t jerry_get_object_keys (const jerry_value_t obj_val); jerry_value_t jerry_get_prototype (const jerry_value_t obj_val); @@ -247,21 +244,18 @@ bool jerry_get_object_native_pointer (const jerry_value_t obj_val, void jerry_set_object_native_pointer (const jerry_value_t obj_val, void *native_pointer_p, const jerry_object_native_info_t *native_info_p); -bool jerry_delete_object_native_pointer (const jerry_value_t obj_val, - const jerry_object_native_info_t *native_info_p); -void jerry_native_pointer_init_references (void *native_pointer_p, - const jerry_object_native_info_t *native_info_p); -void jerry_native_pointer_release_references (void *native_pointer_p, - const jerry_object_native_info_t *native_info_p); +bool jerry_delete_object_native_pointer (const jerry_value_t obj_val, const jerry_object_native_info_t *native_info_p); +void jerry_native_pointer_init_references (void *native_pointer_p, const jerry_object_native_info_t *native_info_p); +void jerry_native_pointer_release_references (void *native_pointer_p, const jerry_object_native_info_t *native_info_p); void jerry_native_pointer_set_reference (jerry_value_t *reference_p, jerry_value_t value); -bool jerry_objects_foreach (jerry_objects_foreach_t foreach_p, - void *user_data); +bool jerry_objects_foreach (jerry_objects_foreach_t foreach_p, void *user_data); bool jerry_objects_foreach_by_native_info (const jerry_object_native_info_t *native_info_p, jerry_objects_foreach_by_native_info_t foreach_p, void *user_data_p); -bool jerry_foreach_object_property (const jerry_value_t obj_val, jerry_object_property_foreach_t foreach_p, +bool jerry_foreach_object_property (const jerry_value_t obj_val, + jerry_object_property_foreach_t foreach_p, void *user_data_p); jerry_value_t jerry_object_get_property_names (const jerry_value_t obj_val, jerry_property_filter_t filter); @@ -272,8 +266,8 @@ jerry_value_t jerry_to_property_descriptor (jerry_value_t obj_value, jerry_prope * Module functions. */ -jerry_value_t jerry_module_link (const jerry_value_t module_val, - jerry_module_resolve_callback_t callback_p, void *user_p); +jerry_value_t +jerry_module_link (const jerry_value_t module_val, jerry_module_resolve_callback_t callback_p, void *user_p); jerry_value_t jerry_module_evaluate (const jerry_value_t module_val); jerry_module_state_t jerry_module_get_state (const jerry_value_t module_val); void jerry_module_set_state_changed_callback (jerry_module_state_changed_callback_t callback, void *user_p); @@ -284,7 +278,8 @@ jerry_value_t jerry_module_get_namespace (const jerry_value_t module_val); void jerry_module_set_import_callback (jerry_module_import_callback_t callback_p, void *user_p); jerry_value_t jerry_native_module_create (jerry_native_module_evaluate_callback_t callback, - const jerry_value_t * const exports_p, size_t number_of_exports); + const jerry_value_t *const exports_p, + size_t number_of_exports); jerry_value_t jerry_native_module_get_export (const jerry_value_t native_module_val, const jerry_value_t export_name_val); jerry_value_t jerry_native_module_set_export (const jerry_value_t native_module_val, @@ -300,8 +295,7 @@ jerry_value_t jerry_resolve_or_reject_promise (jerry_value_t promise, jerry_valu jerry_value_t jerry_get_promise_result (const jerry_value_t promise); jerry_promise_state_t jerry_get_promise_state (const jerry_value_t promise); -void jerry_promise_set_callback (jerry_promise_event_filter_t filters, jerry_promise_callback_t callback, - void *user_p); +void jerry_promise_set_callback (jerry_promise_event_filter_t filters, jerry_promise_callback_t callback, void *user_p); /** * Symbol functions. @@ -373,16 +367,13 @@ void jerry_free_source_info (jerry_source_info_t *source_info_p); */ bool jerry_value_is_arraybuffer (const jerry_value_t value); jerry_value_t jerry_create_arraybuffer (const jerry_length_t size); -jerry_value_t jerry_create_arraybuffer_external (const jerry_length_t size, - uint8_t *buffer_p, void *buffer_user_p); +jerry_value_t jerry_create_arraybuffer_external (const jerry_length_t size, uint8_t *buffer_p, void *buffer_user_p); jerry_length_t jerry_arraybuffer_write (const jerry_value_t value, jerry_length_t offset, const uint8_t *buf_p, jerry_length_t buf_size); -jerry_length_t jerry_arraybuffer_read (const jerry_value_t value, - jerry_length_t offset, - uint8_t *buf_p, - jerry_length_t buf_size); +jerry_length_t +jerry_arraybuffer_read (const jerry_value_t value, jerry_length_t offset, uint8_t *buf_p, jerry_length_t buf_size); jerry_length_t jerry_get_arraybuffer_byte_length (const jerry_value_t value); uint8_t *jerry_get_arraybuffer_pointer (const jerry_value_t value); jerry_value_t jerry_is_arraybuffer_detachable (const jerry_value_t value); @@ -399,24 +390,19 @@ void jerry_arraybuffer_set_allocator_callbacks (jerry_arraybuffer_allocate_t all bool jerry_value_is_shared_arraybuffer (const jerry_value_t value); jerry_value_t jerry_create_shared_arraybuffer (const jerry_length_t size); -jerry_value_t jerry_create_shared_arraybuffer_external (const jerry_length_t size, - uint8_t *buffer_p, void *buffer_user_p); +jerry_value_t +jerry_create_shared_arraybuffer_external (const jerry_length_t size, uint8_t *buffer_p, void *buffer_user_p); /** * DataView functions. */ jerry_value_t -jerry_create_dataview (const jerry_value_t value, - const jerry_length_t byte_offset, - const jerry_length_t byte_length); +jerry_create_dataview (const jerry_value_t value, const jerry_length_t byte_offset, const jerry_length_t byte_length); -bool -jerry_value_is_dataview (const jerry_value_t value); +bool jerry_value_is_dataview (const jerry_value_t value); jerry_value_t -jerry_get_dataview_buffer (const jerry_value_t dataview, - jerry_length_t *byte_offset, - jerry_length_t *byte_length); +jerry_get_dataview_buffer (const jerry_value_t dataview, jerry_length_t *byte_offset, jerry_length_t *byte_length); /** * TypedArray functions. @@ -432,9 +418,8 @@ jerry_value_t jerry_create_typedarray_for_arraybuffer (jerry_typedarray_type_t t const jerry_value_t arraybuffer); jerry_typedarray_type_t jerry_get_typedarray_type (jerry_value_t value); jerry_length_t jerry_get_typedarray_length (jerry_value_t value); -jerry_value_t jerry_get_typedarray_buffer (jerry_value_t value, - jerry_length_t *byte_offset, - jerry_length_t *byte_length); +jerry_value_t +jerry_get_typedarray_buffer (jerry_value_t value, jerry_length_t *byte_offset, jerry_length_t *byte_length); jerry_value_t jerry_json_parse (const jerry_char_t *string_p, jerry_size_t string_size); jerry_value_t jerry_json_stringify (const jerry_value_t object_to_stringify); jerry_value_t jerry_create_container (jerry_container_type_t container_type, @@ -451,7 +436,6 @@ jerry_value_t jerry_container_operation (jerry_container_operation_t operation, * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_CORE_H */ diff --git a/jerry-core/include/jerryscript-debugger-transport.h b/jerry-core/include/jerryscript-debugger-transport.h index f6f9acaa..587fad81 100644 --- a/jerry-core/include/jerryscript-debugger-transport.h +++ b/jerry-core/include/jerryscript-debugger-transport.h @@ -20,10 +20,9 @@ #include <stddef.h> #include <stdint.h> -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +#include "jerryscript-compiler.h" + +JERRY_C_API_BEGIN /** \addtogroup jerry-debugger-transport Jerry engine debugger interface - transport control * @{ @@ -61,7 +60,8 @@ typedef void (*jerry_debugger_transport_close_t) (struct jerry_debugger_transpor * Send data callback. */ typedef bool (*jerry_debugger_transport_send_t) (struct jerry_debugger_transport_interface_t *header_p, - uint8_t *message_p, size_t message_length); + uint8_t *message_p, + size_t message_length); /** * Receive data callback. @@ -76,7 +76,7 @@ typedef struct jerry_debugger_transport_interface_t { /* The following fields must be filled before calling jerry_debugger_transport_add(). */ jerry_debugger_transport_close_t close; /**< close connection callback */ - jerry_debugger_transport_send_t send; /**< send data callback */ + jerry_debugger_transport_send_t send; /**< send data callback */ jerry_debugger_transport_receive_t receive; /**< receive data callback */ /* The following fields are filled by jerry_debugger_transport_add(). */ @@ -84,8 +84,10 @@ typedef struct jerry_debugger_transport_interface_t } jerry_debugger_transport_header_t; void jerry_debugger_transport_add (jerry_debugger_transport_header_t *header_p, - size_t send_message_header_size, size_t max_send_message_size, - size_t receive_message_header_size, size_t max_receive_message_size); + size_t send_message_header_size, + size_t max_send_message_size, + size_t receive_message_header_size, + size_t max_receive_message_size); void jerry_debugger_transport_start (void); bool jerry_debugger_transport_is_connected (void); @@ -101,7 +103,6 @@ void jerry_debugger_transport_sleep (void); * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_DEBUGGER_TRANSPORT_H */ diff --git a/jerry-core/include/jerryscript-debugger.h b/jerry-core/include/jerryscript-debugger.h index c876e83d..cf22f4cb 100644 --- a/jerry-core/include/jerryscript-debugger.h +++ b/jerry-core/include/jerryscript-debugger.h @@ -18,10 +18,7 @@ #include "jerryscript-port.h" -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +JERRY_C_API_BEGIN /** \addtogroup jerry-debugger Jerry engine interface - Debugger feature * @{ @@ -53,7 +50,8 @@ typedef enum typedef jerry_value_t (*jerry_debugger_wait_for_source_callback_t) (const jerry_char_t *resource_name_p, size_t resource_name_size, const jerry_char_t *source_p, - size_t source_size, void *user_p); + size_t source_size, + void *user_p); /** * Engine debugger functions. @@ -64,7 +62,8 @@ void jerry_debugger_continue (void); void jerry_debugger_stop_at_breakpoint (bool enable_stop_at_breakpoint); jerry_debugger_wait_for_source_status_t jerry_debugger_wait_for_client_source (jerry_debugger_wait_for_source_callback_t callback_p, - void *user_p, jerry_value_t *return_value); + void *user_p, + jerry_value_t *return_value); void jerry_debugger_send_output (const jerry_char_t *buffer, jerry_size_t str_size); void jerry_debugger_send_log (jerry_log_level_t level, const jerry_char_t *buffer, jerry_size_t str_size); @@ -72,7 +71,6 @@ void jerry_debugger_send_log (jerry_log_level_t level, const jerry_char_t *buffe * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_DEBUGGER_H */ diff --git a/jerry-core/include/jerryscript-port.h b/jerry-core/include/jerryscript-port.h index c219a610..91bb3fe3 100644 --- a/jerry-core/include/jerryscript-port.h +++ b/jerry-core/include/jerryscript-port.h @@ -22,10 +22,7 @@ #include "jerryscript-types.h" -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +JERRY_C_API_BEGIN /** \addtogroup jerry_port Jerry engine port * @{ @@ -77,10 +74,10 @@ void JERRY_ATTR_NORETURN jerry_port_fatal (jerry_fatal_code_t code); */ typedef enum { - JERRY_LOG_LEVEL_ERROR, /**< the engine will terminate after the message is printed */ - JERRY_LOG_LEVEL_WARNING, /**< a request is aborted, but the engine continues its operation */ - JERRY_LOG_LEVEL_DEBUG, /**< debug messages from the engine, low volume */ - JERRY_LOG_LEVEL_TRACE /**< detailed info about engine internals, potentially high volume */ + JERRY_LOG_LEVEL_ERROR, /**< the engine will terminate after the message is printed */ + JERRY_LOG_LEVEL_WARNING, /**< a request is aborted, but the engine continues its operation */ + JERRY_LOG_LEVEL_DEBUG, /**< debug messages from the engine, low volume */ + JERRY_LOG_LEVEL_TRACE /**< detailed info about engine internals, potentially high volume */ } jerry_log_level_t; /** @@ -228,10 +225,7 @@ void jerry_port_release_source (uint8_t *buffer_p); * * @return A module object if resolving is successful, an error otherwise. */ -jerry_value_t -jerry_port_module_resolve (const jerry_value_t specifier, - const jerry_value_t referrer, - void *user_p); +jerry_value_t jerry_port_module_resolve (const jerry_value_t specifier, const jerry_value_t referrer, void *user_p); /** * Release known modules. @@ -249,7 +243,6 @@ void jerry_port_module_release (const jerry_value_t realm); * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_PORT_H */ diff --git a/jerry-core/include/jerryscript-snapshot.h b/jerry-core/include/jerryscript-snapshot.h index 8356e9b3..95e96b73 100644 --- a/jerry-core/include/jerryscript-snapshot.h +++ b/jerry-core/include/jerryscript-snapshot.h @@ -18,10 +18,7 @@ #include "jerryscript-types.h" -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +JERRY_C_API_BEGIN /** \addtogroup jerry-snapshot Jerry engine interface - Snapshot feature * @{ @@ -70,22 +67,32 @@ typedef struct /** * Snapshot functions. */ -jerry_value_t jerry_generate_snapshot (jerry_value_t compiled_code, uint32_t generate_snapshot_opts, - uint32_t *buffer_p, size_t buffer_size); +jerry_value_t jerry_generate_snapshot (jerry_value_t compiled_code, + uint32_t generate_snapshot_opts, + uint32_t *buffer_p, + size_t buffer_size); -jerry_value_t jerry_exec_snapshot (const uint32_t *snapshot_p, size_t snapshot_size, - size_t func_index, uint32_t exec_snapshot_opts, +jerry_value_t jerry_exec_snapshot (const uint32_t *snapshot_p, + size_t snapshot_size, + size_t func_index, + uint32_t exec_snapshot_opts, const jerry_exec_snapshot_option_values_t *options_values_p); -size_t jerry_merge_snapshots (const uint32_t **inp_buffers_p, size_t *inp_buffer_sizes_p, size_t number_of_snapshots, - uint32_t *out_buffer_p, size_t out_buffer_size, const char **error_p); -size_t jerry_get_literals_from_snapshot (const uint32_t *snapshot_p, size_t snapshot_size, - jerry_char_t *lit_buf_p, size_t lit_buf_size, bool is_c_format); +size_t jerry_merge_snapshots (const uint32_t **inp_buffers_p, + size_t *inp_buffer_sizes_p, + size_t number_of_snapshots, + uint32_t *out_buffer_p, + size_t out_buffer_size, + const char **error_p); +size_t jerry_get_literals_from_snapshot (const uint32_t *snapshot_p, + size_t snapshot_size, + jerry_char_t *lit_buf_p, + size_t lit_buf_size, + bool is_c_format); /** * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_SNAPSHOT_H */ diff --git a/jerry-core/include/jerryscript-types.h b/jerry-core/include/jerryscript-types.h index 6b7e1e8e..9d131479 100644 --- a/jerry-core/include/jerryscript-types.h +++ b/jerry-core/include/jerryscript-types.h @@ -22,10 +22,7 @@ #include "jerryscript-compiler.h" -#ifdef __cplusplus -extern "C" -{ -#endif /* __cplusplus */ +JERRY_C_API_BEGIN /** \addtogroup jerry Jerry engine interface * @{ @@ -51,12 +48,12 @@ extern "C" */ typedef enum { - JERRY_INIT_EMPTY = (0u), /**< empty flag set */ - JERRY_INIT_SHOW_OPCODES = (1u << 0), /**< dump byte-code to log after parse */ + JERRY_INIT_EMPTY = (0u), /**< empty flag set */ + JERRY_INIT_SHOW_OPCODES = (1u << 0), /**< dump byte-code to log after parse */ JERRY_INIT_SHOW_REGEXP_OPCODES = (1u << 1), /**< dump regexp byte-code to log after compilation */ - JERRY_INIT_MEM_STATS = (1u << 2), /**< dump memory statistics */ - JERRY_INIT_MEM_STATS_SEPARATE = (1u << 3), /**< deprecated, an unused placeholder now */ - JERRY_INIT_DEBUGGER = (1u << 4), /**< deprecated, an unused placeholder now */ + JERRY_INIT_MEM_STATS = (1u << 2), /**< dump memory statistics */ + JERRY_INIT_MEM_STATS_SEPARATE = (1u << 3), /**< deprecated, an unused placeholder now */ + JERRY_INIT_DEBUGGER = (1u << 4), /**< deprecated, an unused placeholder now */ } jerry_init_flag_t; /** @@ -64,16 +61,16 @@ typedef enum */ typedef enum { - JERRY_ERROR_NONE = 0, /**< No Error */ + JERRY_ERROR_NONE = 0, /**< No Error */ - JERRY_ERROR_COMMON, /**< Error */ - JERRY_ERROR_EVAL, /**< EvalError */ - JERRY_ERROR_RANGE, /**< RangeError */ + JERRY_ERROR_COMMON, /**< Error */ + JERRY_ERROR_EVAL, /**< EvalError */ + JERRY_ERROR_RANGE, /**< RangeError */ JERRY_ERROR_REFERENCE, /**< ReferenceError */ - JERRY_ERROR_SYNTAX, /**< SyntaxError */ - JERRY_ERROR_TYPE, /**< TypeError */ - JERRY_ERROR_URI, /**< URIError */ - JERRY_ERROR_AGGREGATE /**< AggregateError */ + JERRY_ERROR_SYNTAX, /**< SyntaxError */ + JERRY_ERROR_TYPE, /**< TypeError */ + JERRY_ERROR_URI, /**< URIError */ + JERRY_ERROR_AGGREGATE /**< AggregateError */ } jerry_error_t; /** @@ -132,12 +129,12 @@ typedef enum */ typedef enum { - JERRY_REGEXP_FLAG_GLOBAL = (1u << 1), /**< Globally scan string */ + JERRY_REGEXP_FLAG_GLOBAL = (1u << 1), /**< Globally scan string */ JERRY_REGEXP_FLAG_IGNORE_CASE = (1u << 2), /**< Ignore case */ - JERRY_REGEXP_FLAG_MULTILINE = (1u << 3), /**< Multiline string scan */ - JERRY_REGEXP_FLAG_STICKY = (1u << 4), /**< ECMAScript v11, 21.2.5.14 */ - JERRY_REGEXP_FLAG_UNICODE = (1u << 5), /**< ECMAScript v11, 21.2.5.17 */ - JERRY_REGEXP_FLAG_DOTALL = (1u << 6) /**< ECMAScript v11, 21.2.5.3 */ + JERRY_REGEXP_FLAG_MULTILINE = (1u << 3), /**< Multiline string scan */ + JERRY_REGEXP_FLAG_STICKY = (1u << 4), /**< ECMAScript v11, 21.2.5.14 */ + JERRY_REGEXP_FLAG_UNICODE = (1u << 5), /**< ECMAScript v11, 21.2.5.17 */ + JERRY_REGEXP_FLAG_DOTALL = (1u << 6) /**< ECMAScript v11, 21.2.5.3 */ } jerry_regexp_flags_t; /** @@ -229,23 +226,23 @@ typedef struct */ typedef enum { - JERRY_PROPERTY_FILTER_ALL = 0, /**< List all property keys independently - * from key type or property value attributes - * (equivalent to Reflect.ownKeys call) */ - JERRY_PROPERTY_FILTER_TRAVERSE_PROTOTYPE_CHAIN = (1 << 0), /**< Include keys from the objects's - * prototype chain as well */ - JERRY_PROPERTY_FILTER_EXCLUDE_NON_CONFIGURABLE = (1 << 1), /**< Exclude property key if - * the property is non-configurable */ - JERRY_PROPERTY_FILTER_EXCLUDE_NON_ENUMERABLE = (1 << 2), /**< Exclude property key if - * the property is non-enumerable */ - JERRY_PROPERTY_FILTER_EXCLUDE_NON_WRITABLE = (1 << 3), /**< Exclude property key if - * the property is non-writable */ - JERRY_PROPERTY_FILTER_EXCLUDE_STRINGS = (1 << 4), /**< Exclude property key if it is a string */ - JERRY_PROPERTY_FILTER_EXCLUDE_SYMBOLS = (1 << 5), /**< Exclude property key if it is a symbol */ - JERRY_PROPERTY_FILTER_EXCLUDE_INTEGER_INDICES = (1 << 6), /**< Exclude property key if it is an integer index */ - JERRY_PROPERTY_FILTER_INTEGER_INDICES_AS_NUMBER = (1 << 7), /**< By default integer index property keys are - * converted to string. Enabling this flags keeps - * integer index property keys as numbers. */ + JERRY_PROPERTY_FILTER_ALL = 0, /**< List all property keys independently + * from key type or property value attributes + * (equivalent to Reflect.ownKeys call) */ + JERRY_PROPERTY_FILTER_TRAVERSE_PROTOTYPE_CHAIN = (1 << 0), /**< Include keys from the objects's + * prototype chain as well */ + JERRY_PROPERTY_FILTER_EXCLUDE_NON_CONFIGURABLE = (1 << 1), /**< Exclude property key if + * the property is non-configurable */ + JERRY_PROPERTY_FILTER_EXCLUDE_NON_ENUMERABLE = (1 << 2), /**< Exclude property key if + * the property is non-enumerable */ + JERRY_PROPERTY_FILTER_EXCLUDE_NON_WRITABLE = (1 << 3), /**< Exclude property key if + * the property is non-writable */ + JERRY_PROPERTY_FILTER_EXCLUDE_STRINGS = (1 << 4), /**< Exclude property key if it is a string */ + JERRY_PROPERTY_FILTER_EXCLUDE_SYMBOLS = (1 << 5), /**< Exclude property key if it is a symbol */ + JERRY_PROPERTY_FILTER_EXCLUDE_INTEGER_INDICES = (1 << 6), /**< Exclude property key if it is an integer index */ + JERRY_PROPERTY_FILTER_INTEGER_INDICES_AS_NUMBER = (1 << 7), /**< By default integer index property keys are + * converted to string. Enabling this flags keeps + * integer index property keys as numbers. */ } jerry_property_filter_t; /** @@ -296,8 +293,7 @@ typedef void (*jerry_object_native_free_callback_t) (void *native_p, struct jerr /** * Free callback for external strings. */ -typedef void (*jerry_external_string_free_callback_t) (jerry_char_t *string_p, jerry_size_t string_size, - void *user_p); +typedef void (*jerry_external_string_free_callback_t) (jerry_char_t *string_p, jerry_size_t string_size, void *user_p); /** * Decorator callback for Error objects. The decorator can create @@ -337,8 +333,7 @@ typedef bool (*jerry_object_property_foreach_t) (const jerry_value_t property_na /** * Function type applied for each object in the engine. */ -typedef bool (*jerry_objects_foreach_t) (const jerry_value_t object, - void *user_data_p); +typedef bool (*jerry_objects_foreach_t) (const jerry_value_t object, void *user_data_p); /** * Function type applied for each matching object in the engine. @@ -418,18 +413,18 @@ typedef struct jerry_context_t jerry_context_t; */ typedef enum { - JERRY_BIN_OP_EQUAL = 0u, /**< equal comparison (==) */ - JERRY_BIN_OP_STRICT_EQUAL, /**< strict equal comparison (===) */ - JERRY_BIN_OP_LESS, /**< less relation (<) */ - JERRY_BIN_OP_LESS_EQUAL, /**< less or equal relation (<=) */ - JERRY_BIN_OP_GREATER, /**< greater relation (>) */ + JERRY_BIN_OP_EQUAL = 0u, /**< equal comparison (==) */ + JERRY_BIN_OP_STRICT_EQUAL, /**< strict equal comparison (===) */ + JERRY_BIN_OP_LESS, /**< less relation (<) */ + JERRY_BIN_OP_LESS_EQUAL, /**< less or equal relation (<=) */ + JERRY_BIN_OP_GREATER, /**< greater relation (>) */ JERRY_BIN_OP_GREATER_EQUAL, /**< greater or equal relation (>=)*/ - JERRY_BIN_OP_INSTANCEOF, /**< instanceof operation */ - JERRY_BIN_OP_ADD, /**< addition operator (+) */ - JERRY_BIN_OP_SUB, /**< subtraction operator (-) */ - JERRY_BIN_OP_MUL, /**< multiplication operator (*) */ - JERRY_BIN_OP_DIV, /**< division operator (/) */ - JERRY_BIN_OP_REM, /**< remainder operator (%) */ + JERRY_BIN_OP_INSTANCEOF, /**< instanceof operation */ + JERRY_BIN_OP_ADD, /**< addition operator (+) */ + JERRY_BIN_OP_SUB, /**< subtraction operator (-) */ + JERRY_BIN_OP_MUL, /**< multiplication operator (*) */ + JERRY_BIN_OP_DIV, /**< division operator (/) */ + JERRY_BIN_OP_REM, /**< remainder operator (%) */ } jerry_binary_operation_t; /** @@ -480,15 +475,15 @@ typedef enum { JERRY_TYPE_NONE = 0u, /**< no type information */ JERRY_TYPE_UNDEFINED, /**< undefined type */ - JERRY_TYPE_NULL, /**< null type */ - JERRY_TYPE_BOOLEAN, /**< boolean type */ - JERRY_TYPE_NUMBER, /**< number type */ - JERRY_TYPE_STRING, /**< string type */ - JERRY_TYPE_OBJECT, /**< object type */ - JERRY_TYPE_FUNCTION, /**< function type */ - JERRY_TYPE_ERROR, /**< error/abort type */ - JERRY_TYPE_SYMBOL, /**< symbol type */ - JERRY_TYPE_BIGINT, /**< bigint type */ + JERRY_TYPE_NULL, /**< null type */ + JERRY_TYPE_BOOLEAN, /**< boolean type */ + JERRY_TYPE_NUMBER, /**< number type */ + JERRY_TYPE_STRING, /**< string type */ + JERRY_TYPE_OBJECT, /**< object type */ + JERRY_TYPE_FUNCTION, /**< function type */ + JERRY_TYPE_ERROR, /**< error/abort type */ + JERRY_TYPE_SYMBOL, /**< symbol type */ + JERRY_TYPE_BIGINT, /**< bigint type */ } jerry_type_t; /** @@ -496,33 +491,33 @@ typedef enum */ typedef enum { - JERRY_OBJECT_TYPE_NONE = 0u, /**< Non object type */ - JERRY_OBJECT_TYPE_GENERIC, /**< Generic JavaScript object without any internal property */ - JERRY_OBJECT_TYPE_MODULE_NAMESPACE, /**< Namespace object */ - JERRY_OBJECT_TYPE_ARRAY, /**< Array object */ - JERRY_OBJECT_TYPE_PROXY, /**< Proxy object */ - JERRY_OBJECT_TYPE_SCRIPT, /**< Script object (see jerry_parse) */ - JERRY_OBJECT_TYPE_MODULE, /**< Module object (see jerry_parse) */ - JERRY_OBJECT_TYPE_PROMISE, /**< Promise object */ - JERRY_OBJECT_TYPE_DATAVIEW, /**< Dataview object */ - JERRY_OBJECT_TYPE_FUNCTION, /**< Function object (see jerry_function_get_type) */ - JERRY_OBJECT_TYPE_TYPEDARRAY, /**< %TypedArray% object (see jerry_get_typedarray_type) */ - JERRY_OBJECT_TYPE_ITERATOR, /**< Iterator object (see jerry_iterator_get_type) */ - JERRY_OBJECT_TYPE_CONTAINER, /**< Container object (see jerry_container_get_type) */ - JERRY_OBJECT_TYPE_ERROR, /**< Error object */ - JERRY_OBJECT_TYPE_ARRAYBUFFER, /**< Array buffer object */ + JERRY_OBJECT_TYPE_NONE = 0u, /**< Non object type */ + JERRY_OBJECT_TYPE_GENERIC, /**< Generic JavaScript object without any internal property */ + JERRY_OBJECT_TYPE_MODULE_NAMESPACE, /**< Namespace object */ + JERRY_OBJECT_TYPE_ARRAY, /**< Array object */ + JERRY_OBJECT_TYPE_PROXY, /**< Proxy object */ + JERRY_OBJECT_TYPE_SCRIPT, /**< Script object (see jerry_parse) */ + JERRY_OBJECT_TYPE_MODULE, /**< Module object (see jerry_parse) */ + JERRY_OBJECT_TYPE_PROMISE, /**< Promise object */ + JERRY_OBJECT_TYPE_DATAVIEW, /**< Dataview object */ + JERRY_OBJECT_TYPE_FUNCTION, /**< Function object (see jerry_function_get_type) */ + JERRY_OBJECT_TYPE_TYPEDARRAY, /**< %TypedArray% object (see jerry_get_typedarray_type) */ + JERRY_OBJECT_TYPE_ITERATOR, /**< Iterator object (see jerry_iterator_get_type) */ + JERRY_OBJECT_TYPE_CONTAINER, /**< Container object (see jerry_container_get_type) */ + JERRY_OBJECT_TYPE_ERROR, /**< Error object */ + JERRY_OBJECT_TYPE_ARRAYBUFFER, /**< Array buffer object */ JERRY_OBJECT_TYPE_SHARED_ARRAY_BUFFER, /**< Shared Array Buffer object */ - JERRY_OBJECT_TYPE_ARGUMENTS, /**< Arguments object */ - JERRY_OBJECT_TYPE_BOOLEAN, /**< Boolean object */ - JERRY_OBJECT_TYPE_DATE, /**< Date object */ - JERRY_OBJECT_TYPE_NUMBER, /**< Number object */ - JERRY_OBJECT_TYPE_REGEXP, /**< RegExp object */ - JERRY_OBJECT_TYPE_STRING, /**< String object */ - JERRY_OBJECT_TYPE_SYMBOL, /**< Symbol object */ - JERRY_OBJECT_TYPE_GENERATOR, /**< Generator object */ - JERRY_OBJECT_TYPE_BIGINT, /**< BigInt object */ - JERRY_OBJECT_TYPE_WEAKREF, /**< WeakRef object */ + JERRY_OBJECT_TYPE_ARGUMENTS, /**< Arguments object */ + JERRY_OBJECT_TYPE_BOOLEAN, /**< Boolean object */ + JERRY_OBJECT_TYPE_DATE, /**< Date object */ + JERRY_OBJECT_TYPE_NUMBER, /**< Number object */ + JERRY_OBJECT_TYPE_REGEXP, /**< RegExp object */ + JERRY_OBJECT_TYPE_STRING, /**< String object */ + JERRY_OBJECT_TYPE_SYMBOL, /**< Symbol object */ + JERRY_OBJECT_TYPE_GENERATOR, /**< Generator object */ + JERRY_OBJECT_TYPE_BIGINT, /**< BigInt object */ + JERRY_OBJECT_TYPE_WEAKREF, /**< WeakRef object */ } jerry_object_type_t; /** @@ -530,12 +525,12 @@ typedef enum */ typedef enum { - JERRY_FUNCTION_TYPE_NONE = 0u, /**< Non function type */ - JERRY_FUNCTION_TYPE_GENERIC, /**< Generic JavaScript function */ - JERRY_FUNCTION_TYPE_ACCESSOR, /**< Accessor function */ - JERRY_FUNCTION_TYPE_BOUND, /**< Bound function */ - JERRY_FUNCTION_TYPE_ARROW, /**< Arrow function */ - JERRY_FUNCTION_TYPE_GENERATOR, /**< Generator function */ + JERRY_FUNCTION_TYPE_NONE = 0u, /**< Non function type */ + JERRY_FUNCTION_TYPE_GENERIC, /**< Generic JavaScript function */ + JERRY_FUNCTION_TYPE_ACCESSOR, /**< Accessor function */ + JERRY_FUNCTION_TYPE_BOUND, /**< Bound function */ + JERRY_FUNCTION_TYPE_ARROW, /**< Arrow function */ + JERRY_FUNCTION_TYPE_GENERATOR, /**< Generator function */ } jerry_function_type_t; /** @@ -543,11 +538,11 @@ typedef enum */ typedef enum { - JERRY_ITERATOR_TYPE_NONE = 0u, /**< Non iterator type */ - JERRY_ITERATOR_TYPE_ARRAY, /**< Array iterator */ - JERRY_ITERATOR_TYPE_STRING, /**< String iterator */ - JERRY_ITERATOR_TYPE_MAP, /**< Map iterator */ - JERRY_ITERATOR_TYPE_SET, /**< Set iterator */ + JERRY_ITERATOR_TYPE_NONE = 0u, /**< Non iterator type */ + JERRY_ITERATOR_TYPE_ARRAY, /**< Array iterator */ + JERRY_ITERATOR_TYPE_STRING, /**< String iterator */ + JERRY_ITERATOR_TYPE_MAP, /**< Map iterator */ + JERRY_ITERATOR_TYPE_SET, /**< Set iterator */ } jerry_iterator_type_t; /** @@ -559,7 +554,7 @@ typedef enum */ typedef enum { - JERRY_MODULE_STATE_INVALID = 0, /**< return value for jerry_module_get_state when its argument is not a module */ + JERRY_MODULE_STATE_INVALID = 0, /**< return value for jerry_module_get_state when its argument is not a module */ JERRY_MODULE_STATE_UNLINKED = 1, /**< module is currently unlinked */ JERRY_MODULE_STATE_LINKING = 2, /**< module is currently being linked */ JERRY_MODULE_STATE_LINKED = 3, /**< module has been linked (its dependencies has been resolved) */ @@ -585,14 +580,17 @@ typedef jerry_value_t (*jerry_module_import_callback_t) (const jerry_value_t spe /** * Callback which is called after the module enters into linked, evaluated or error state. */ -typedef void (*jerry_module_state_changed_callback_t) (jerry_module_state_t new_state, const jerry_value_t module, - const jerry_value_t value, void *user_p); +typedef void (*jerry_module_state_changed_callback_t) (jerry_module_state_t new_state, + const jerry_value_t module, + const jerry_value_t value, + void *user_p); /** * Callback which is called when an import.meta expression of a module is evaluated the first time. */ typedef void (*jerry_module_import_meta_callback_t) (const jerry_value_t module, - const jerry_value_t meta_object, void *user_p); + const jerry_value_t meta_object, + void *user_p); /** * Callback which is called by jerry_module_evaluate to evaluate the native module. @@ -625,9 +623,9 @@ typedef enum typedef enum { JERRY_PROMISE_STATE_NONE = 0u, /**< Invalid/Unknown state (possibly called on a non-promise object). */ - JERRY_PROMISE_STATE_PENDING, /**< Promise is in "Pending" state. */ + JERRY_PROMISE_STATE_PENDING, /**< Promise is in "Pending" state. */ JERRY_PROMISE_STATE_FULFILLED, /**< Promise is in "Fulfilled" state. */ - JERRY_PROMISE_STATE_REJECTED, /**< Promise is in "Rejected" state. */ + JERRY_PROMISE_STATE_REJECTED, /**< Promise is in "Rejected" state. */ } jerry_promise_state_t; /** @@ -649,8 +647,8 @@ typedef enum * object: the Promise object * value: value for resolving */ JERRY_PROMISE_EVENT_REJECT_FULFILLED, /**< called when a reject is called on a fulfilled Promise - * object: the Promise object - * value: value for rejecting */ + * object: the Promise object + * value: value for rejecting */ JERRY_PROMISE_EVENT_REJECT_WITHOUT_HANDLER, /**< called when a Promise is rejected without a handler * object: the Promise object * value: value for rejecting */ @@ -715,7 +713,8 @@ typedef enum * Notification callback for tracking Promise and async function operations. */ typedef void (*jerry_promise_callback_t) (jerry_promise_event_type_t event_type, - const jerry_value_t object, const jerry_value_t value, + const jerry_value_t object, + const jerry_value_t value, void *user_p); /** @@ -727,19 +726,19 @@ typedef void (*jerry_promise_callback_t) (jerry_promise_event_type_t event_type, */ typedef enum { - JERRY_SYMBOL_ASYNC_ITERATOR, /**< @@asyncIterator well-known symbol */ - JERRY_SYMBOL_HAS_INSTANCE, /**< @@hasInstance well-known symbol */ + JERRY_SYMBOL_ASYNC_ITERATOR, /**< @@asyncIterator well-known symbol */ + JERRY_SYMBOL_HAS_INSTANCE, /**< @@hasInstance well-known symbol */ JERRY_SYMBOL_IS_CONCAT_SPREADABLE, /**< @@isConcatSpreadable well-known symbol */ - JERRY_SYMBOL_ITERATOR, /**< @@iterator well-known symbol */ - JERRY_SYMBOL_MATCH, /**< @@match well-known symbol */ - JERRY_SYMBOL_REPLACE, /**< @@replace well-known symbol */ - JERRY_SYMBOL_SEARCH, /**< @@search well-known symbol */ - JERRY_SYMBOL_SPECIES, /**< @@species well-known symbol */ - JERRY_SYMBOL_SPLIT, /**< @@split well-known symbol */ - JERRY_SYMBOL_TO_PRIMITIVE, /**< @@toPrimitive well-known symbol */ - JERRY_SYMBOL_TO_STRING_TAG, /**< @@toStringTag well-known symbol */ - JERRY_SYMBOL_UNSCOPABLES, /**< @@unscopables well-known symbol */ - JERRY_SYMBOL_MATCH_ALL, /**< @@matchAll well-known symbol */ + JERRY_SYMBOL_ITERATOR, /**< @@iterator well-known symbol */ + JERRY_SYMBOL_MATCH, /**< @@match well-known symbol */ + JERRY_SYMBOL_REPLACE, /**< @@replace well-known symbol */ + JERRY_SYMBOL_SEARCH, /**< @@search well-known symbol */ + JERRY_SYMBOL_SPECIES, /**< @@species well-known symbol */ + JERRY_SYMBOL_SPLIT, /**< @@split well-known symbol */ + JERRY_SYMBOL_TO_PRIMITIVE, /**< @@toPrimitive well-known symbol */ + JERRY_SYMBOL_TO_STRING_TAG, /**< @@toStringTag well-known symbol */ + JERRY_SYMBOL_UNSCOPABLES, /**< @@unscopables well-known symbol */ + JERRY_SYMBOL_MATCH_ALL, /**< @@matchAll well-known symbol */ } jerry_well_known_symbol_t; /** @@ -834,20 +833,24 @@ typedef enum /** * Callback for allocating the backing store of array buffer or shared array buffer objects. */ -typedef uint8_t *(*jerry_arraybuffer_allocate_t) (jerry_arraybuffer_type_t buffer_type, uint32_t buffer_size, - void **arraybuffer_user_p, void *user_p); +typedef uint8_t *(*jerry_arraybuffer_allocate_t) (jerry_arraybuffer_type_t buffer_type, + uint32_t buffer_size, + void **arraybuffer_user_p, + void *user_p); /** * Callback for freeing the backing store of array buffer or shared array buffer objects. */ -typedef void (*jerry_arraybuffer_free_t) (jerry_arraybuffer_type_t buffer_type, uint8_t *buffer_p, - uint32_t buffer_size, void *arraybuffer_user_p, void *user_p); +typedef void (*jerry_arraybuffer_free_t) (jerry_arraybuffer_type_t buffer_type, + uint8_t *buffer_p, + uint32_t buffer_size, + void *arraybuffer_user_p, + void *user_p); /** * @} */ -#ifdef __cplusplus -} -#endif /* __cplusplus */ +JERRY_C_API_END + #endif /* !JERRYSCRIPT_TYPES_H */ |