@@ -42,22 +42,6 @@ typedef enum
4242 JERRY_COMPLETION_CODE_INVALID_SNAPSHOT_FORMAT = 3 , /**< snapshot format is not valid */
4343} jerry_completion_code_t ;
4444
45- /**
46- * Jerry API data types
47- */
48- typedef enum
49- {
50- JERRY_DATA_TYPE_VOID , /**< no return value */
51- JERRY_DATA_TYPE_UNDEFINED , /**< undefined */
52- JERRY_DATA_TYPE_NULL , /**< null */
53- JERRY_DATA_TYPE_BOOLEAN , /**< bool */
54- JERRY_DATA_TYPE_FLOAT32 , /**< 32-bit float */
55- JERRY_DATA_TYPE_FLOAT64 , /**< 64-bit float */
56- JERRY_DATA_TYPE_UINT32 , /**< number converted to 32-bit unsigned integer */
57- JERRY_DATA_TYPE_STRING , /**< string */
58- JERRY_DATA_TYPE_OBJECT /**< object */
59- } jerry_data_type_t ;
60-
6145/**
6246 * Jerry API Error object types
6347 */
@@ -103,32 +87,15 @@ typedef struct ecma_string_t jerry_string_t;
10387typedef struct ecma_object_t jerry_object_t ;
10488
10589/**
106- * Description of an extension function's argument
90+ * Description of a JerryScript value
10791 */
108- typedef struct jerry_value_t
109- {
110- jerry_data_type_t type ; /**< argument data type */
111-
112- union
113- {
114- bool v_bool ; /**< boolean */
115-
116- float v_float32 ; /**< 32-bit float */
117- double v_float64 ; /**< 64-bit float */
118-
119- uint32_t v_uint32 ; /**< number converted 32-bit unsigned integer */
120-
121- jerry_string_t * v_string ; /**< pointer to a JS string */
122- jerry_object_t * v_object ; /**< pointer to a JS object */
123-
124- } u ;
125- } jerry_value_t ;
92+ typedef uint32_t jerry_value_t ;
12693
12794/**
12895 * Type of an external function handler
12996 */
13097typedef bool (* jerry_external_handler_t ) (const jerry_object_t * function_obj_p ,
131- const jerry_value_t * this_p ,
98+ const jerry_value_t this_p ,
13299 jerry_value_t * ret_val_p ,
133100 const jerry_value_t args_p [],
134101 const jerry_length_t args_count );
@@ -142,7 +109,7 @@ typedef void (*jerry_object_free_callback_t) (const uintptr_t native_p);
142109 * Function type applied for each fields in objects
143110 */
144111typedef bool (* jerry_object_field_foreach_t ) (const jerry_string_t * field_name_p ,
145- const jerry_value_t * field_value_p ,
112+ const jerry_value_t field_value_p ,
146113 void * user_data_p );
147114
148115/**
@@ -153,52 +120,51 @@ jerry_object_t *jerry_get_global (void);
153120/**
154121 * Checker functions of 'jerry_value_t'
155122 */
156- bool jerry_value_is_void (const jerry_value_t * value_p );
157- bool jerry_value_is_null (const jerry_value_t * value_p );
158- bool jerry_value_is_undefined (const jerry_value_t * value_p );
159- bool jerry_value_is_boolean (const jerry_value_t * value_p );
160- bool jerry_value_is_number (const jerry_value_t * value_p );
161- bool jerry_value_is_string (const jerry_value_t * value_p );
162- bool jerry_value_is_object (const jerry_value_t * value_p );
163- bool jerry_value_is_function (const jerry_value_t * value_p );
123+ bool jerry_value_is_boolean (const jerry_value_t );
124+ bool jerry_value_is_error (const jerry_value_t );
125+ bool jerry_value_is_function (const jerry_value_t );
126+ bool jerry_value_is_number (const jerry_value_t );
127+ bool jerry_value_is_null (const jerry_value_t );
128+ bool jerry_value_is_object (const jerry_value_t );
129+ bool jerry_value_is_string (const jerry_value_t );
130+ bool jerry_value_is_undefined (const jerry_value_t );
164131
165132/**
166133 * Getter functions of 'jerry_value_t'
167134 */
168- bool jerry_get_boolean_value (const jerry_value_t * value_p );
169- double jerry_get_number_value (const jerry_value_t * value_p );
170- jerry_string_t * jerry_get_string_value (const jerry_value_t * value_p );
171- jerry_object_t * jerry_get_object_value (const jerry_value_t * value_p );
135+ bool jerry_get_boolean_value (const jerry_value_t );
136+ double jerry_get_number_value (const jerry_value_t );
137+ jerry_string_t * jerry_get_string_value (const jerry_value_t );
138+ jerry_object_t * jerry_get_object_value (const jerry_value_t );
172139
173140/**
174141 * Converters of 'jerry_value_t'
175142 */
176- jerry_string_t * jerry_value_to_string (const jerry_value_t * );
143+ jerry_value_t jerry_value_to_string (const jerry_value_t );
177144
178145/**
179146 * Create functions of 'jerry_value_t'
180147 */
181- jerry_value_t jerry_create_void_value (void );
182148jerry_value_t jerry_create_null_value (void );
183149jerry_value_t jerry_create_undefined_value (void );
184- jerry_value_t jerry_create_boolean_value (bool value );
185- jerry_value_t jerry_create_number_value (double value );
186- jerry_value_t jerry_create_object_value (jerry_object_t * value );
187- jerry_value_t jerry_create_string_value (jerry_string_t * value );
150+ jerry_value_t jerry_create_boolean_value (bool );
151+ jerry_value_t jerry_create_number_value (double );
152+ jerry_value_t jerry_create_object_value (jerry_object_t * );
153+ jerry_value_t jerry_create_string_value (jerry_string_t * );
188154
189155/**
190156 * Acquire types with reference counter (increase the references)
191157 */
192158jerry_string_t * jerry_acquire_string (jerry_string_t * );
193159jerry_object_t * jerry_acquire_object (jerry_object_t * );
194- jerry_value_t * jerry_acquire_value (jerry_value_t * );
160+ jerry_value_t jerry_acquire_value (jerry_value_t );
195161
196162/**
197163 * Relase the referenced values
198164 */
199165void jerry_release_object (jerry_object_t * );
200166void jerry_release_string (jerry_string_t * );
201- void jerry_release_value (jerry_value_t * );
167+ void jerry_release_value (jerry_value_t );
202168
203169/**
204170 * Create functions of API objects
@@ -214,7 +180,7 @@ jerry_string_t *jerry_create_string_sz (const jerry_char_t *, jerry_size_t);
214180/**
215181 * Functions of array objects
216182 */
217- bool jerry_set_array_index_value (jerry_object_t * , jerry_length_t , jerry_value_t * );
183+ bool jerry_set_array_index_value (jerry_object_t * , jerry_length_t , jerry_value_t );
218184bool jerry_get_array_index_value (jerry_object_t * , jerry_length_t , jerry_value_t * );
219185
220186/**
@@ -229,12 +195,12 @@ jerry_size_t jerry_string_to_char_buffer (const jerry_string_t *, jerry_char_t *
229195 */
230196bool jerry_is_constructor (const jerry_object_t * );
231197bool jerry_is_function (const jerry_object_t * );
232- bool jerry_add_object_field (jerry_object_t * , const jerry_char_t * , jerry_size_t , const jerry_value_t * , bool );
198+ bool jerry_add_object_field (jerry_object_t * , const jerry_char_t * , jerry_size_t , const jerry_value_t , bool );
233199bool jerry_delete_object_field (jerry_object_t * , const jerry_char_t * , jerry_size_t );
234200bool jerry_get_object_field_value (jerry_object_t * , const jerry_char_t * , jerry_value_t * );
235201bool jerry_get_object_field_value_sz (jerry_object_t * , const jerry_char_t * , jerry_size_t , jerry_value_t * );
236- bool jerry_set_object_field_value (jerry_object_t * , const jerry_char_t * , const jerry_value_t * );
237- bool jerry_set_object_field_value_sz (jerry_object_t * , const jerry_char_t * , jerry_size_t , const jerry_value_t * );
202+ bool jerry_set_object_field_value (jerry_object_t * , const jerry_char_t * , const jerry_value_t );
203+ bool jerry_set_object_field_value_sz (jerry_object_t * , const jerry_char_t * , jerry_size_t , const jerry_value_t );
238204bool jerry_foreach_object_field (jerry_object_t * , jerry_object_field_foreach_t , void * );
239205bool jerry_get_object_native_handle (jerry_object_t * , uintptr_t * );
240206void jerry_set_object_native_handle (jerry_object_t * , uintptr_t , jerry_object_free_callback_t );
0 commit comments