From dccc1ca1304dc1fcb86c8e24edd491509269b3e7 Mon Sep 17 00:00:00 2001 From: cheliequan <liequanche@126.com> Date: 星期日, 29 一月 2023 14:44:52 +0800 Subject: [PATCH] 解决编译告警 --- util.h | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 48 insertions(+), 1 deletions(-) diff --git a/util.h b/util.h index 3cd6741..e7b8702 100644 --- a/util.h +++ b/util.h @@ -38,6 +38,35 @@ bool bus_dbapi_get_str(void *handle, const char *topic, char **pptr_str); int get_value_by_key(char *json, const char *key, char **pptr_data); + +template <class T> +bool bus_dbapi_get_json( T &list, string &json) +{ + using TMPT = typename std::remove_reference<decltype(*list.begin())>::type; + TMPT t; + string jsonString; + int len = list.size(); + bool bRet = false; + jsonString += "["; + + for ( int i= 0 ; i < len ; i++ ) + { + string tmpjsonString; + bRet = proto_to_json(list[i], tmpjsonString); + if ( (len > 1) &&(i < len - 1)) + { + tmpjsonString += ","; + } + jsonString += tmpjsonString; + } + + jsonString += "]"; + + json = jsonString; + return bRet; +} + + template <class T> bool bus_dbapi_get_list(char *json, const char *flag_key, const char *data_key, T &list) { char *ptr_value = NULL; @@ -105,6 +134,24 @@ } template <class T> +bool bus_dbapi_get_list(char *json, bool is_array, T &list) { + char *success_name = NULL; + char *data_name = NULL; + if ( is_array ) + { + success_name = NULL; + data_name = NULL; + } + else + { + success_name = (char *)"success"; + data_name = (char *)"data"; + } + + return bus_dbapi_get_list(json, (const char *)success_name, (const char *)data_name, list); +} + +template <class T> bool bus_dbapi_get_list(void *handle, const char *topic, T &list) { crepmsg *repmsg = NULL; size_t len = 0; @@ -134,4 +181,4 @@ return iRet; } -#endif \ No newline at end of file +#endif -- Gitblit v1.8.0