@@ -53,7 +53,7 @@ void zjs_run_pending_callbacks()
53
53
void zjs_set_property (const jerry_value_t obj , const char * str ,
54
54
const jerry_value_t prop )
55
55
{
56
- jerry_value_t name = jerry_create_string ((jerry_char_t * )str );
56
+ jerry_value_t name = jerry_create_string ((const jerry_char_t * )str );
57
57
jerry_set_property (obj , name , prop );
58
58
jerry_release_value (name );
59
59
}
@@ -73,7 +73,7 @@ void zjs_obj_add_boolean(jerry_value_t obj, bool flag, const char *name)
73
73
{
74
74
// requires: obj is an existing JS object
75
75
// effects: creates a new field in parent named name, set to value
76
- jerry_value_t jname = jerry_create_string (name );
76
+ jerry_value_t jname = jerry_create_string (( const jerry_char_t * ) name );
77
77
jerry_value_t jbool = jerry_create_boolean (flag );
78
78
jerry_set_property (obj , jname , jbool );
79
79
jerry_release_value (jname );
@@ -89,7 +89,7 @@ void zjs_obj_add_function(jerry_value_t obj, void *func, const char *name)
89
89
// NOTE: The docs on this function make it look like func obj should be
90
90
// released before we return, but in a loop of 25k buffer creates there
91
91
// seemed to be no memory leak. Reconsider with future intelligence.
92
- jerry_value_t jname = jerry_create_string (name );
92
+ jerry_value_t jname = jerry_create_string (( const jerry_char_t * ) name );
93
93
jerry_value_t jfunc = jerry_create_external_function (func );
94
94
if (jerry_value_is_function (jfunc )) {
95
95
jerry_set_property (obj , jname , jfunc );
@@ -103,7 +103,7 @@ void zjs_obj_add_object(jerry_value_t parent, jerry_value_t child,
103
103
{
104
104
// requires: parent and child are existing JS objects
105
105
// effects: creates a new field in parent named name, that refers to child
106
- jerry_value_t jname = jerry_create_string (name );
106
+ jerry_value_t jname = jerry_create_string (( const jerry_char_t * ) name );
107
107
jerry_set_property (parent , jname , child );
108
108
jerry_release_value (jname );
109
109
}
@@ -112,8 +112,8 @@ void zjs_obj_add_string(jerry_value_t obj, const char *str, const char *name)
112
112
{
113
113
// requires: obj is an existing JS object
114
114
// effects: creates a new field in parent named name, set to sval
115
- jerry_value_t jname = jerry_create_string (name );
116
- jerry_value_t jstr = jerry_create_string (str );
115
+ jerry_value_t jname = jerry_create_string (( const jerry_char_t * ) name );
116
+ jerry_value_t jstr = jerry_create_string (( const jerry_char_t * ) str );
117
117
jerry_set_property (obj , jname , jstr );
118
118
jerry_release_value (jname );
119
119
jerry_release_value (jstr );
@@ -123,7 +123,7 @@ void zjs_obj_add_number(jerry_value_t obj, double num, const char *name)
123
123
{
124
124
// requires: obj is an existing JS object
125
125
// effects: creates a new field in parent named name, set to nval
126
- jerry_value_t jname = jerry_create_string (name );
126
+ jerry_value_t jname = jerry_create_string (( const jerry_char_t * ) name );
127
127
jerry_value_t jnum = jerry_create_number (num );
128
128
jerry_set_property (obj , jname , jnum );
129
129
jerry_release_value (jname );
@@ -167,7 +167,7 @@ bool zjs_obj_get_string(jerry_value_t obj, const char *name, char *buffer,
167
167
if (jlen >= len )
168
168
return false;
169
169
170
- int wlen = jerry_string_to_char_buffer (value , buffer , jlen );
170
+ int wlen = jerry_string_to_char_buffer (value , ( jerry_char_t * ) buffer , jlen );
171
171
buffer [wlen ] = '\0' ;
172
172
173
173
jerry_release_value (value );
@@ -201,6 +201,19 @@ bool zjs_obj_get_uint32(jerry_value_t obj, const char *name, uint32_t *num)
201
201
return true;
202
202
}
203
203
204
+ bool zjs_obj_get_int32 (jerry_value_t obj , const char * name , int32_t * num )
205
+ {
206
+ // requires: obj is an existing JS object, value name should exist as number
207
+ // effects: retrieves field specified by name as a int32
208
+ jerry_value_t value = zjs_get_property (obj , name );
209
+ if (jerry_value_has_error_flag (value ))
210
+ return false;
211
+
212
+ * num = (int32_t )jerry_get_number_value (value );
213
+ jerry_release_value (value );
214
+ return true;
215
+ }
216
+
204
217
bool zjs_hex_to_byte (char * buf , uint8_t * byte )
205
218
{
206
219
// requires: buf is a string with at least two hex chars
0 commit comments