mirror of
https://github.com/zlgopen/awtk.git
synced 2025-05-08 19:44:45 +08:00
format code
This commit is contained in:
parent
8c6887b575
commit
79a48012e5
@ -1,4 +1,6 @@
|
||||
# 最新动态
|
||||
2022/06/30
|
||||
* 增加函数 fscript\_get\_code\_id
|
||||
|
||||
2022/06/29
|
||||
* 完善 edit 中 hook\_children\_button 的逻辑(感谢雨欣提供补丁)
|
||||
|
@ -124,7 +124,8 @@ conf_node_t* conf_doc_dup_node(conf_doc_t* doc, conf_node_t* node, const char* n
|
||||
*
|
||||
* @return {ret_t} 返回RET_OK表示成功,否则表示失败。
|
||||
*/
|
||||
ret_t conf_doc_set_node_prop(conf_doc_t* doc, conf_node_t* node, const char* name, const value_t* v);
|
||||
ret_t conf_doc_set_node_prop(conf_doc_t* doc, conf_node_t* node, const char* name,
|
||||
const value_t* v);
|
||||
|
||||
/**
|
||||
* @method conf_doc_find_node
|
||||
|
@ -126,8 +126,8 @@ serial_handle_t serial_open(const char* port) {
|
||||
handle->mutex = tk_mutex_create();
|
||||
handle->thread = tk_thread_create(serial_thread_entry, handle);
|
||||
|
||||
if (!SetCommMask(dev, EV_RXCHAR) || handle->cond == NULL || handle->mutex == NULL || handle->thread == NULL ||
|
||||
tk_socketpair(socks) < 0) {
|
||||
if (!SetCommMask(dev, EV_RXCHAR) || handle->cond == NULL || handle->mutex == NULL ||
|
||||
handle->thread == NULL || tk_socketpair(socks) < 0) {
|
||||
serial_close(handle);
|
||||
return NULL;
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ void do_send(tk_iostream_t* iostream, const char* msg) {
|
||||
#else
|
||||
log_debug("---------test tk_istream_read_line ---------------- \r\n");
|
||||
#endif
|
||||
for (uint32_t i = 0; i < 100000; i++) {
|
||||
for (uint32_t i = 0; i < 100000; i++) {
|
||||
memset(buff, 0x0, sizeof(buff));
|
||||
#ifdef TEST_READ_LEN
|
||||
ret = tk_istream_read_len(istream, (uint8_t*)buff, sizeof(buff), 5000);
|
||||
@ -34,7 +34,7 @@ void do_send(tk_iostream_t* iostream, const char* msg) {
|
||||
log_debug("read failed : %d \r\n", ret);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
tk_istream_flush(istream);
|
||||
|
||||
if (ret >= 0) {
|
||||
|
@ -592,7 +592,8 @@ ret_t fs_copy_file(fs_t* fs, const char* src, const char* dst) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
static ret_t fs_copy_item(fs_t* fs, fs_item_t* item, const char* src, const char* dst, bool_t overwrite) {
|
||||
static ret_t fs_copy_item(fs_t* fs, fs_item_t* item, const char* src, const char* dst,
|
||||
bool_t overwrite) {
|
||||
char subsrc[MAX_PATH + 1];
|
||||
char subdst[MAX_PATH + 1];
|
||||
path_build(subsrc, MAX_PATH, src, item->name, NULL);
|
||||
|
@ -901,6 +901,23 @@ static ret_t fscript_parser_skip_seperators(fscript_parser_t* parser) {
|
||||
#define STR_CODE_ID_START "code_id(\""
|
||||
#define STR_CODE_ID_END "\")"
|
||||
|
||||
char* fscript_get_code_id(const char* str) {
|
||||
const char* end = NULL;
|
||||
const char* start = NULL;
|
||||
return_value_if_fail(str != NULL, NULL);
|
||||
|
||||
start = strstr(str, STR_CODE_ID_START);
|
||||
if (start != NULL) {
|
||||
start += strlen(STR_CODE_ID_START);
|
||||
end = strstr(start, STR_CODE_ID_END);
|
||||
if (end != NULL) {
|
||||
return tk_strndup(start, end - start);
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static ret_t fscript_parser_skip_line_comment(fscript_parser_t* parser) {
|
||||
char c = '\0';
|
||||
str_t* str = &(parser->temp);
|
||||
@ -911,16 +928,11 @@ static ret_t fscript_parser_skip_line_comment(fscript_parser_t* parser) {
|
||||
} while (c != '\0' && c != '\r' && c != '\n');
|
||||
|
||||
if (str->size > sizeof(STR_CODE_ID_START)) {
|
||||
const char* end = NULL;
|
||||
const char* start = strstr(str->str, STR_CODE_ID_START);
|
||||
if (start != NULL) {
|
||||
start += strlen(STR_CODE_ID_START);
|
||||
end = strstr(start, STR_CODE_ID_END);
|
||||
if (end != NULL) {
|
||||
TKMEM_FREE(parser->code_id);
|
||||
parser->code_id = tk_strndup(start, end - start);
|
||||
log_debug("code_id:%s\n", parser->code_id);
|
||||
}
|
||||
char* code_id = fscript_get_code_id(str->str);
|
||||
if (code_id != NULL) {
|
||||
TKMEM_FREE(parser->code_id);
|
||||
parser->code_id = code_id;
|
||||
log_debug("code_id:%s\n", parser->code_id);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -495,6 +495,15 @@ ret_t fscript_set_hooks(const fscript_hooks_t* hooks);
|
||||
*/
|
||||
ret_t fscript_ensure_locals(fscript_t* fscript);
|
||||
|
||||
/**
|
||||
* @method fscript_get_code_id
|
||||
* 获取code_id。
|
||||
* @param {const char*} str 代码。
|
||||
*
|
||||
* @return {char*} 返回code_id,有调用者释放返回的字符串。
|
||||
*/
|
||||
char* fscript_get_code_id(const char* str);
|
||||
|
||||
/**
|
||||
* @class fscript_function_def_t
|
||||
* 脚本函数定义。
|
||||
|
@ -290,7 +290,7 @@ typedef enum _ret_t {
|
||||
#define strcasecmp stricmp
|
||||
#endif /*TK_PATH_SEP*/
|
||||
|
||||
#define log_if_fail(p) \
|
||||
#define log_if_fail(p) \
|
||||
if (!(p)) { \
|
||||
log_warn("%s:%d condition(" #p ") failed!\n", __FUNCTION__, __LINE__); \
|
||||
}
|
||||
|
@ -557,16 +557,18 @@ TEST(ConfJson, set_prop) {
|
||||
conf_doc_t* doc = conf_doc_load_json(data, -1);
|
||||
conf_node_t* tom = conf_node_find_child(doc->root, "tom");
|
||||
ASSERT_EQ(tom != NULL, true);
|
||||
|
||||
|
||||
value_set_str(&v, "tom");
|
||||
ASSERT_EQ(conf_doc_set_node_prop(doc, tom, "name", &v), RET_OK);
|
||||
|
||||
|
||||
value_set_str(&v, "awtk");
|
||||
ASSERT_EQ(conf_doc_set_node_prop(doc, tom, "product", &v), RET_OK);
|
||||
|
||||
str_init(&str, 100);
|
||||
conf_doc_save_json(doc, &str);
|
||||
ASSERT_STREQ(str.str, "{\n \"tom\" : {\n \"name\" : \"tom\",\n \"age\" : 100,\n \"product\" : \"awtk\"\n }\n}");
|
||||
ASSERT_STREQ(str.str,
|
||||
"{\n \"tom\" : {\n \"name\" : \"tom\",\n \"age\" : 100,\n "
|
||||
"\"product\" : \"awtk\"\n }\n}");
|
||||
str_reset(&str);
|
||||
|
||||
conf_doc_destroy(doc);
|
||||
@ -581,10 +583,12 @@ TEST(Json, append_array) {
|
||||
ASSERT_EQ(conf_doc_get(doc, "hello.#size", &v), RET_OK);
|
||||
ASSERT_EQ(value_int(&v), 4);
|
||||
ASSERT_EQ(conf_doc_set_int(doc, "hello.[-1]", 5), RET_OK);
|
||||
|
||||
|
||||
str_init(&str, 100);
|
||||
conf_doc_save_json(doc, &str);
|
||||
ASSERT_STREQ(str.str, "{\n \"hello\" : [\n 1,\n 2,\n 3,\n 4,\n 5\n ]\n}");
|
||||
ASSERT_STREQ(
|
||||
str.str,
|
||||
"{\n \"hello\" : [\n 1,\n 2,\n 3,\n 4,\n 5\n ]\n}");
|
||||
str_reset(&str);
|
||||
|
||||
conf_doc_destroy(doc);
|
||||
|
@ -191,7 +191,7 @@ TEST(Fs, copy_dir) {
|
||||
ASSERT_EQ(dir_exist("./b/a2"), TRUE);
|
||||
ASSERT_EQ(dir_exist("./b/a3"), TRUE);
|
||||
ASSERT_EQ(file_exist("./b/a3/a4/test.txt"), TRUE);
|
||||
|
||||
|
||||
ASSERT_EQ(fs_copy_dir_ex(os_fs(), src, dst, FALSE), RET_OK);
|
||||
ASSERT_EQ(dir_exist("./b"), TRUE);
|
||||
ASSERT_EQ(dir_exist("./b/a1"), TRUE);
|
||||
|
@ -2772,3 +2772,9 @@ TEST(FScript, binary) {
|
||||
|
||||
TK_OBJECT_UNREF(obj);
|
||||
}
|
||||
|
||||
TEST(FScript, code_id) {
|
||||
char* code_id = fscript_get_code_id("//code_id(\"123\");");
|
||||
ASSERT_STREQ(code_id, "123");
|
||||
TKMEM_FREE(code_id);
|
||||
}
|
||||
|
@ -220,7 +220,7 @@ TEST(Str, unescap) {
|
||||
ASSERT_EQ(str_set(s, "\\?"), RET_OK);
|
||||
ASSERT_EQ(str_unescape(s), RET_OK);
|
||||
ASSERT_EQ(string(s->str), "\?");
|
||||
|
||||
|
||||
ASSERT_EQ(str_set(s, "\\0"), RET_OK);
|
||||
ASSERT_EQ(str_unescape(s), RET_OK);
|
||||
ASSERT_EQ(string(s->str), "");
|
||||
|
Loading…
x
Reference in New Issue
Block a user