Przeglądaj źródła

Merge pull request #67 from yangfasheng/master

update jerry_util.c and jerry_message.c
yangfasheng 6 lat temu
rodzic
commit
d1e553ff3f

+ 1 - 7
rtthread-port/jerry_message.c

@@ -170,13 +170,7 @@ int js_msg_test(int argc, char** argv)
 {
 {
     if (argc > 2)
     if (argc > 2)
     {
     {
-        rt_uint32_t cmd = atoi(argv[2]);
-        js_message_send(argv[1], (rt_uint8_t *)&cmd, 4);
-    }
-    else if (argc > 1)
-    {
-        rt_uint32_t cmd = atoi(argv[1]);
-        js_message_send("test", (rt_uint8_t *)&cmd, 4);
+        js_message_send(argv[1], (rt_uint8_t *)argv[2], rt_strlen(argv[2]));
     }
     }
     
     
     return 0;
     return 0;

+ 17 - 7
rtthread-port/jerry_util.c

@@ -27,16 +27,16 @@ bool is_utf8_string(const void* str, int size)
 
 
     while (start < end)
     while (start < end)
     {
     {
-        if (*start < 0x80) 				// (10000000): 值小于0x80的为ASCII字符    
+        if (*start < 0x80) 				// (10000000): 值小于0x80的为ASCII字符
         {
         {
             start++;
             start++;
         }
         }
-        else if (*start < (0xC0)) 		// (11000000): 值介于0x80与0xC0之间的为无效UTF-8字符    
+        else if (*start < (0xC0)) 		// (11000000): 值介于0x80与0xC0之间的为无效UTF-8字符
         {
         {
             ret = false;
             ret = false;
             break;
             break;
         }
         }
-        else if (*start < (0xE0)) 		// (11100000): 此范围内为2字节UTF-8字符    
+        else if (*start < (0xE0)) 		// (11100000): 此范围内为2字节UTF-8字符
         {
         {
             if (start >= end - 1)
             if (start >= end - 1)
             {
             {
@@ -51,7 +51,7 @@ bool is_utf8_string(const void* str, int size)
 
 
             start += 2;
             start += 2;
         }
         }
-        else if (*start < (0xF0)) 		// (11110000): 此范围内为3字节UTF-8字符    
+        else if (*start < (0xF0)) 		// (11110000): 此范围内为3字节UTF-8字符
         {
         {
             if (start >= end - 2)
             if (start >= end - 2)
             {
             {
@@ -105,6 +105,16 @@ void js_set_string_property(const jerry_value_t obj, const char *name,
     jerry_release_value (value_str);
     jerry_release_value (value_str);
 }
 }
 
 
+void js_set_boolean_property(const jerry_value_t obj, const char *name,
+                             bool value)
+{
+    jerry_value_t str = jerry_create_string((const jerry_char_t *)name);
+    jerry_value_t value_bool = jerry_create_boolean(value);
+    jerry_set_property(obj, str, value_bool);
+    jerry_release_value(str);
+    jerry_release_value(value_bool);
+}
+
 void js_add_function(const jerry_value_t obj, const char *name,
 void js_add_function(const jerry_value_t obj, const char *name,
                      jerry_external_handler_t func)
                      jerry_external_handler_t func)
 {
 {
@@ -128,13 +138,13 @@ jerry_value_t js_string_to_value(const char *value)
     else
     else
     {
     {
         char *utf8 = NULL;
         char *utf8 = NULL;
-		
+
         Gb2312ToUtf8((char *)value, strlen(value), &utf8);
         Gb2312ToUtf8((char *)value, strlen(value), &utf8);
         str = jerry_create_string((const jerry_char_t *)utf8);
         str = jerry_create_string((const jerry_char_t *)utf8);
-		
+
         rt_free(utf8);
         rt_free(utf8);
     }
     }
-    
+
     return str;
     return str;
 }
 }
 
 

+ 2 - 0
rtthread-port/jerry_util.h

@@ -42,6 +42,8 @@ void js_set_property(const jerry_value_t obj, const char *name,
                      const jerry_value_t prop);
                      const jerry_value_t prop);
 void js_set_string_property(const jerry_value_t obj, const char *name,
 void js_set_string_property(const jerry_value_t obj, const char *name,
                             char* value);
                             char* value);
+void js_set_boolean_property(const jerry_value_t obj, const char *name,
+                             bool value);
 
 
 jerry_value_t js_get_property(const jerry_value_t obj, const char *name);
 jerry_value_t js_get_property(const jerry_value_t obj, const char *name);