From 2b541e1d1a9c96e0e43ed91b13d05b78046bab99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=98=95?= Date: Wed, 26 Jun 2019 10:51:47 +0800 Subject: [PATCH] =?UTF-8?q?Mod=20=20aaa-12=20=E5=A2=9E=E5=8A=A0=20libcJSON?= =?UTF-8?q?=20=E5=BA=93=20=E5=92=8C=20struct2json=20=E5=BA=93=20RCA?= =?UTF-8?q?=EF=BC=9A=20SOL=EF=BC=9A=20=E4=BF=AE=E6=94=B9=E4=BA=BA=EF=BC=9A?= =?UTF-8?q?huangxin=20=E6=A3=80=E8=A7=86=E4=BA=BA=EF=BC=9Ahuangxin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Common/cJSON/cJSON.h | 285 +++++++++++++++++++++++++ Common/s2j/s2j.h | 91 ++++++++ Common/s2j/s2jdef.h | 150 +++++++++++++ libs/bin/arm64/libcJSON-arm64.so | Bin 0 -> 33568 bytes libs/bin/arm64/libcJSON-arm64.so.debug | Bin 0 -> 113928 bytes libs/bin/x86/libcJSON-linux.so | Bin 0 -> 37360 bytes libs/bin/x86/libcJSON-linux.so.debug | Bin 0 -> 103336 bytes libs/src/struct2json | 1 + 8 files changed, 527 insertions(+) create mode 100644 Common/cJSON/cJSON.h create mode 100644 Common/s2j/s2j.h create mode 100644 Common/s2j/s2jdef.h create mode 100755 libs/bin/arm64/libcJSON-arm64.so create mode 100755 libs/bin/arm64/libcJSON-arm64.so.debug create mode 100755 libs/bin/x86/libcJSON-linux.so create mode 100755 libs/bin/x86/libcJSON-linux.so.debug create mode 160000 libs/src/struct2json diff --git a/Common/cJSON/cJSON.h b/Common/cJSON/cJSON.h new file mode 100644 index 000000000..592986b86 --- /dev/null +++ b/Common/cJSON/cJSON.h @@ -0,0 +1,285 @@ +/* + Copyright (c) 2009-2017 Dave Gamble and cJSON contributors + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. +*/ + +#ifndef cJSON__h +#define cJSON__h + +#ifdef __cplusplus +extern "C" +{ +#endif + +#if !defined(__WINDOWS__) && (defined(WIN32) || defined(WIN64) || defined(_MSC_VER) || defined(_WIN32)) +#define __WINDOWS__ +#endif + +#ifdef __WINDOWS__ + +/* When compiling for windows, we specify a specific calling convention to avoid issues where we are being called from a project with a different default calling convention. For windows you have 3 define options: + +CJSON_HIDE_SYMBOLS - Define this in the case where you don't want to ever dllexport symbols +CJSON_EXPORT_SYMBOLS - Define this on library build when you want to dllexport symbols (default) +CJSON_IMPORT_SYMBOLS - Define this if you want to dllimport symbol + +For *nix builds that support visibility attribute, you can define similar behavior by + +setting default visibility to hidden by adding +-fvisibility=hidden (for gcc) +or +-xldscope=hidden (for sun cc) +to CFLAGS + +then using the CJSON_API_VISIBILITY flag to "export" the same symbols the way CJSON_EXPORT_SYMBOLS does + +*/ + +#define CJSON_CDECL __cdecl +#define CJSON_STDCALL __stdcall + +/* export symbols by default, this is necessary for copy pasting the C and header file */ +#if !defined(CJSON_HIDE_SYMBOLS) && !defined(CJSON_IMPORT_SYMBOLS) && !defined(CJSON_EXPORT_SYMBOLS) +#define CJSON_EXPORT_SYMBOLS +#endif + +#if defined(CJSON_HIDE_SYMBOLS) +#define CJSON_PUBLIC(type) type CJSON_STDCALL +#elif defined(CJSON_EXPORT_SYMBOLS) +#define CJSON_PUBLIC(type) __declspec(dllexport) type CJSON_STDCALL +#elif defined(CJSON_IMPORT_SYMBOLS) +#define CJSON_PUBLIC(type) __declspec(dllimport) type CJSON_STDCALL +#endif +#else /* !__WINDOWS__ */ +#define CJSON_CDECL +#define CJSON_STDCALL + +#if (defined(__GNUC__) || defined(__SUNPRO_CC) || defined (__SUNPRO_C)) && defined(CJSON_API_VISIBILITY) +#define CJSON_PUBLIC(type) __attribute__((visibility("default"))) type +#else +#define CJSON_PUBLIC(type) type +#endif +#endif + +/* project version */ +#define CJSON_VERSION_MAJOR 1 +#define CJSON_VERSION_MINOR 7 +#define CJSON_VERSION_PATCH 12 + +#include + +/* cJSON Types: */ +#define cJSON_Invalid (0) +#define cJSON_False (1 << 0) +#define cJSON_True (1 << 1) +#define cJSON_NULL (1 << 2) +#define cJSON_Number (1 << 3) +#define cJSON_String (1 << 4) +#define cJSON_Array (1 << 5) +#define cJSON_Object (1 << 6) +#define cJSON_Raw (1 << 7) /* raw json */ + +#define cJSON_IsReference 256 +#define cJSON_StringIsConst 512 + +/* The cJSON structure: */ +typedef struct cJSON +{ + /* next/prev allow you to walk array/object chains. Alternatively, use GetArraySize/GetArrayItem/GetObjectItem */ + struct cJSON *next; + struct cJSON *prev; + /* An array or object item will have a child pointer pointing to a chain of the items in the array/object. */ + struct cJSON *child; + + /* The type of the item, as above. */ + int type; + + /* The item's string, if type==cJSON_String and type == cJSON_Raw */ + char *valuestring; + /* writing to valueint is DEPRECATED, use cJSON_SetNumberValue instead */ + int valueint; + /* The item's number, if type==cJSON_Number */ + double valuedouble; + + /* The item's name string, if this item is the child of, or is in the list of subitems of an object. */ + char *string; +} cJSON; + +typedef struct cJSON_Hooks +{ + /* malloc/free are CDECL on Windows regardless of the default calling convention of the compiler, so ensure the hooks allow passing those functions directly. */ + void *(CJSON_CDECL *malloc_fn)(size_t sz); + void (CJSON_CDECL *free_fn)(void *ptr); +} cJSON_Hooks; + +typedef int cJSON_bool; + +/* Limits how deeply nested arrays/objects can be before cJSON rejects to parse them. + * This is to prevent stack overflows. */ +#ifndef CJSON_NESTING_LIMIT +#define CJSON_NESTING_LIMIT 1000 +#endif + +/* returns the version of cJSON as a string */ +CJSON_PUBLIC(const char*) cJSON_Version(void); + +/* Supply malloc, realloc and free functions to cJSON */ +CJSON_PUBLIC(void) cJSON_InitHooks(cJSON_Hooks* hooks); + +/* Memory Management: the caller is always responsible to free the results from all variants of cJSON_Parse (with cJSON_Delete) and cJSON_Print (with stdlib free, cJSON_Hooks.free_fn, or cJSON_free as appropriate). The exception is cJSON_PrintPreallocated, where the caller has full responsibility of the buffer. */ +/* Supply a block of JSON, and this returns a cJSON object you can interrogate. */ +CJSON_PUBLIC(cJSON *) cJSON_Parse(const char *value); +/* ParseWithOpts allows you to require (and check) that the JSON is null terminated, and to retrieve the pointer to the final byte parsed. */ +/* If you supply a ptr in return_parse_end and parsing fails, then return_parse_end will contain a pointer to the error so will match cJSON_GetErrorPtr(). */ +CJSON_PUBLIC(cJSON *) cJSON_ParseWithOpts(const char *value, const char **return_parse_end, cJSON_bool require_null_terminated); + +/* Render a cJSON entity to text for transfer/storage. */ +CJSON_PUBLIC(char *) cJSON_Print(const cJSON *item); +/* Render a cJSON entity to text for transfer/storage without any formatting. */ +CJSON_PUBLIC(char *) cJSON_PrintUnformatted(const cJSON *item); +/* Render a cJSON entity to text using a buffered strategy. prebuffer is a guess at the final size. guessing well reduces reallocation. fmt=0 gives unformatted, =1 gives formatted */ +CJSON_PUBLIC(char *) cJSON_PrintBuffered(const cJSON *item, int prebuffer, cJSON_bool fmt); +/* Render a cJSON entity to text using a buffer already allocated in memory with given length. Returns 1 on success and 0 on failure. */ +/* NOTE: cJSON is not always 100% accurate in estimating how much memory it will use, so to be safe allocate 5 bytes more than you actually need */ +CJSON_PUBLIC(cJSON_bool) cJSON_PrintPreallocated(cJSON *item, char *buffer, const int length, const cJSON_bool format); +/* Delete a cJSON entity and all subentities. */ +CJSON_PUBLIC(void) cJSON_Delete(cJSON *c); + +/* Returns the number of items in an array (or object). */ +CJSON_PUBLIC(int) cJSON_GetArraySize(const cJSON *array); +/* Retrieve item number "index" from array "array". Returns NULL if unsuccessful. */ +CJSON_PUBLIC(cJSON *) cJSON_GetArrayItem(const cJSON *array, int index); +/* Get item "string" from object. Case insensitive. */ +CJSON_PUBLIC(cJSON *) cJSON_GetObjectItem(const cJSON * const object, const char * const string); +CJSON_PUBLIC(cJSON *) cJSON_GetObjectItemCaseSensitive(const cJSON * const object, const char * const string); +CJSON_PUBLIC(cJSON_bool) cJSON_HasObjectItem(const cJSON *object, const char *string); +/* For analysing failed parses. This returns a pointer to the parse error. You'll probably need to look a few chars back to make sense of it. Defined when cJSON_Parse() returns 0. 0 when cJSON_Parse() succeeds. */ +CJSON_PUBLIC(const char *) cJSON_GetErrorPtr(void); + +/* Check if the item is a string and return its valuestring */ +CJSON_PUBLIC(char *) cJSON_GetStringValue(cJSON *item); + +/* These functions check the type of an item */ +CJSON_PUBLIC(cJSON_bool) cJSON_IsInvalid(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsFalse(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsTrue(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsBool(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsNull(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsNumber(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsString(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsArray(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsObject(const cJSON * const item); +CJSON_PUBLIC(cJSON_bool) cJSON_IsRaw(const cJSON * const item); + +/* These calls create a cJSON item of the appropriate type. */ +CJSON_PUBLIC(cJSON *) cJSON_CreateNull(void); +CJSON_PUBLIC(cJSON *) cJSON_CreateTrue(void); +CJSON_PUBLIC(cJSON *) cJSON_CreateFalse(void); +CJSON_PUBLIC(cJSON *) cJSON_CreateBool(cJSON_bool boolean); +CJSON_PUBLIC(cJSON *) cJSON_CreateNumber(double num); +CJSON_PUBLIC(cJSON *) cJSON_CreateString(const char *string); +/* raw json */ +CJSON_PUBLIC(cJSON *) cJSON_CreateRaw(const char *raw); +CJSON_PUBLIC(cJSON *) cJSON_CreateArray(void); +CJSON_PUBLIC(cJSON *) cJSON_CreateObject(void); + +/* Create a string where valuestring references a string so + * it will not be freed by cJSON_Delete */ +CJSON_PUBLIC(cJSON *) cJSON_CreateStringReference(const char *string); +/* Create an object/arrray that only references it's elements so + * they will not be freed by cJSON_Delete */ +CJSON_PUBLIC(cJSON *) cJSON_CreateObjectReference(const cJSON *child); +CJSON_PUBLIC(cJSON *) cJSON_CreateArrayReference(const cJSON *child); + +/* These utilities create an Array of count items. */ +CJSON_PUBLIC(cJSON *) cJSON_CreateIntArray(const int *numbers, int count); +CJSON_PUBLIC(cJSON *) cJSON_CreateFloatArray(const float *numbers, int count); +CJSON_PUBLIC(cJSON *) cJSON_CreateDoubleArray(const double *numbers, int count); +CJSON_PUBLIC(cJSON *) cJSON_CreateStringArray(const char **strings, int count); + +/* Append item to the specified array/object. */ +CJSON_PUBLIC(void) cJSON_AddItemToArray(cJSON *array, cJSON *item); +CJSON_PUBLIC(void) cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item); +/* Use this when string is definitely const (i.e. a literal, or as good as), and will definitely survive the cJSON object. + * WARNING: When this function was used, make sure to always check that (item->type & cJSON_StringIsConst) is zero before + * writing to `item->string` */ +CJSON_PUBLIC(void) cJSON_AddItemToObjectCS(cJSON *object, const char *string, cJSON *item); +/* Append reference to item to the specified array/object. Use this when you want to add an existing cJSON to a new cJSON, but don't want to corrupt your existing cJSON. */ +CJSON_PUBLIC(void) cJSON_AddItemReferenceToArray(cJSON *array, cJSON *item); +CJSON_PUBLIC(void) cJSON_AddItemReferenceToObject(cJSON *object, const char *string, cJSON *item); + +/* Remove/Detatch items from Arrays/Objects. */ +CJSON_PUBLIC(cJSON *) cJSON_DetachItemViaPointer(cJSON *parent, cJSON * const item); +CJSON_PUBLIC(cJSON *) cJSON_DetachItemFromArray(cJSON *array, int which); +CJSON_PUBLIC(void) cJSON_DeleteItemFromArray(cJSON *array, int which); +CJSON_PUBLIC(cJSON *) cJSON_DetachItemFromObject(cJSON *object, const char *string); +CJSON_PUBLIC(cJSON *) cJSON_DetachItemFromObjectCaseSensitive(cJSON *object, const char *string); +CJSON_PUBLIC(void) cJSON_DeleteItemFromObject(cJSON *object, const char *string); +CJSON_PUBLIC(void) cJSON_DeleteItemFromObjectCaseSensitive(cJSON *object, const char *string); + +/* Update array items. */ +CJSON_PUBLIC(void) cJSON_InsertItemInArray(cJSON *array, int which, cJSON *newitem); /* Shifts pre-existing items to the right. */ +CJSON_PUBLIC(cJSON_bool) cJSON_ReplaceItemViaPointer(cJSON * const parent, cJSON * const item, cJSON * replacement); +CJSON_PUBLIC(void) cJSON_ReplaceItemInArray(cJSON *array, int which, cJSON *newitem); +CJSON_PUBLIC(void) cJSON_ReplaceItemInObject(cJSON *object,const char *string,cJSON *newitem); +CJSON_PUBLIC(void) cJSON_ReplaceItemInObjectCaseSensitive(cJSON *object,const char *string,cJSON *newitem); + +/* Duplicate a cJSON item */ +CJSON_PUBLIC(cJSON *) cJSON_Duplicate(const cJSON *item, cJSON_bool recurse); +/* Duplicate will create a new, identical cJSON item to the one you pass, in new memory that will +need to be released. With recurse!=0, it will duplicate any children connected to the item. +The item->next and ->prev pointers are always zero on return from Duplicate. */ +/* Recursively compare two cJSON items for equality. If either a or b is NULL or invalid, they will be considered unequal. + * case_sensitive determines if object keys are treated case sensitive (1) or case insensitive (0) */ +CJSON_PUBLIC(cJSON_bool) cJSON_Compare(const cJSON * const a, const cJSON * const b, const cJSON_bool case_sensitive); + + +CJSON_PUBLIC(void) cJSON_Minify(char *json); + +/* Helper functions for creating and adding items to an object at the same time. + * They return the added item or NULL on failure. */ +CJSON_PUBLIC(cJSON*) cJSON_AddNullToObject(cJSON * const object, const char * const name); +CJSON_PUBLIC(cJSON*) cJSON_AddTrueToObject(cJSON * const object, const char * const name); +CJSON_PUBLIC(cJSON*) cJSON_AddFalseToObject(cJSON * const object, const char * const name); +CJSON_PUBLIC(cJSON*) cJSON_AddBoolToObject(cJSON * const object, const char * const name, const cJSON_bool boolean); +CJSON_PUBLIC(cJSON*) cJSON_AddNumberToObject(cJSON * const object, const char * const name, const double number); +CJSON_PUBLIC(cJSON*) cJSON_AddStringToObject(cJSON * const object, const char * const name, const char * const string); +CJSON_PUBLIC(cJSON*) cJSON_AddRawToObject(cJSON * const object, const char * const name, const char * const raw); +CJSON_PUBLIC(cJSON*) cJSON_AddObjectToObject(cJSON * const object, const char * const name); +CJSON_PUBLIC(cJSON*) cJSON_AddArrayToObject(cJSON * const object, const char * const name); + +/* When assigning an integer value, it needs to be propagated to valuedouble too. */ +#define cJSON_SetIntValue(object, number) ((object) ? (object)->valueint = (object)->valuedouble = (number) : (number)) +/* helper for the cJSON_SetNumberValue macro */ +CJSON_PUBLIC(double) cJSON_SetNumberHelper(cJSON *object, double number); +#define cJSON_SetNumberValue(object, number) ((object != NULL) ? cJSON_SetNumberHelper(object, (double)number) : (number)) + +/* Macro for iterating over an array or object */ +#define cJSON_ArrayForEach(element, array) for(element = (array != NULL) ? (array)->child : NULL; element != NULL; element = element->next) + +/* malloc/free objects using the malloc/free functions that have been set with cJSON_InitHooks */ +CJSON_PUBLIC(void *) cJSON_malloc(size_t size); +CJSON_PUBLIC(void) cJSON_free(void *object); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Common/s2j/s2j.h b/Common/s2j/s2j.h new file mode 100644 index 000000000..646c34386 --- /dev/null +++ b/Common/s2j/s2j.h @@ -0,0 +1,91 @@ +/* + * This file is part of the struct2json Library. + * + * Copyright (c) 2015, Armink, + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * 'Software'), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Function: It is an head file for this library. You can see all be called functions. + * Created on: 2015-10-14 + */ + +#ifndef __S2J_H__ +#define __S2J_H__ + +#include +#include +#include "s2jdef.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* struct2json software version number */ +#define S2J_SW_VERSION "1.0.3" + +/* Create JSON object */ +#define s2j_create_json_obj(json_obj) \ + S2J_CREATE_JSON_OBJECT(json_obj) + +/* Delete JSON object */ +#define s2j_delete_json_obj(json_obj) \ + S2J_DELETE_JSON_OBJECT(json_obj) + +/* Set basic type element for JSON object */ +#define s2j_json_set_basic_element(to_json, from_struct, type, element) \ + S2J_JSON_SET_BASIC_ELEMENT(to_json, from_struct, type, element) + +/* Set array type element for JSON object */ +#define s2j_json_set_array_element(to_json, from_struct, type, element, size) \ + S2J_JSON_SET_ARRAY_ELEMENT(to_json, from_struct, type, element, size) + +/* Set child structure type element for JSON object */ +#define s2j_json_set_struct_element(child_json, to_json, child_struct, from_struct, type, element) \ + S2J_JSON_SET_STRUCT_ELEMENT(child_json, to_json, child_struct, from_struct, type, element) + +/* Create structure object */ +#define s2j_create_struct_obj(struct_obj, type) \ + S2J_CREATE_STRUCT_OBJECT(struct_obj, type) + +/* Delete structure object */ +#define s2j_delete_struct_obj(struct_obj) \ + S2J_DELETE_STRUCT_OBJECT(struct_obj) + +/* Get basic type element for structure object */ +#define s2j_struct_get_basic_element(to_struct, from_json, type, element) \ + S2J_STRUCT_GET_BASIC_ELEMENT(to_struct, from_json, type, element) + +/* Get array type element for structure object */ +#define s2j_struct_get_array_element(to_struct, from_json, type, element) \ + S2J_STRUCT_GET_ARRAY_ELEMENT(to_struct, from_json, type, element) + +/* Get child structure type element for structure object */ +#define s2j_struct_get_struct_element(child_struct, to_struct, child_json, from_json, type, element) \ + S2J_STRUCT_GET_STRUCT_ELEMENT(child_struct, to_struct, child_json, from_json, type, element) + +/* s2j.c */ +extern S2jHook s2jHook; +void s2j_init(S2jHook *hook); + +#ifdef __cplusplus +} +#endif + +#endif /* __S2J_H__ */ diff --git a/Common/s2j/s2jdef.h b/Common/s2j/s2jdef.h new file mode 100644 index 000000000..ee6cfe0c5 --- /dev/null +++ b/Common/s2j/s2jdef.h @@ -0,0 +1,150 @@ +/* + * This file is part of the struct2json Library. + * + * Copyright (c) 2015, Armink, + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * 'Software'), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Function: It is an head file for this library. + * Created on: 2015-10-14 + */ + +#ifndef __S2JDEF_H__ +#define __S2JDEF_H__ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct { + void *(*malloc_fn)(size_t sz); + void (*free_fn)(void *ptr); +} S2jHook, *S2jHook_t; + +#define S2J_STRUCT_GET_int_ELEMENT(to_struct, from_json, _element) \ + json_temp = cJSON_GetObjectItem(from_json, #_element); \ + if (json_temp) (to_struct)->_element = json_temp->valueint; + +#define S2J_STRUCT_GET_string_ELEMENT(to_struct, from_json, _element) \ + json_temp = cJSON_GetObjectItem(from_json, #_element); \ + if (json_temp) strcpy((to_struct)->_element, json_temp->valuestring); + +#define S2J_STRUCT_GET_double_ELEMENT(to_struct, from_json, _element) \ + json_temp = cJSON_GetObjectItem(from_json, #_element); \ + if (json_temp) (to_struct)->_element = json_temp->valuedouble; + +#define S2J_STRUCT_ARRAY_GET_int_ELEMENT(to_struct, from_json, _element, index) \ + (to_struct)->_element[index] = from_json->valueint; + +#define S2J_STRUCT_ARRAY_GET_string_ELEMENT(to_struct, from_json, _element, index) \ + strcpy((to_struct)->_element[index], from_json->valuestring); + +#define S2J_STRUCT_ARRAY_GET_double_ELEMENT(to_struct, from_json, _element, index) \ + (to_struct)->_element[index] = from_json->valuedouble; + +#define S2J_STRUCT_ARRAY_GET_ELEMENT(to_struct, from_json, type, _element, index) \ + S2J_STRUCT_ARRAY_GET_##type##_ELEMENT(to_struct, from_json, _element, index) + +#define S2J_JSON_SET_int_ELEMENT(to_json, from_struct, _element) \ + cJSON_AddNumberToObject(to_json, #_element, (from_struct)->_element); + +#define S2J_JSON_SET_double_ELEMENT(to_json, from_struct, _element) \ + cJSON_AddNumberToObject(to_json, #_element, (from_struct)->_element); + +#define S2J_JSON_SET_string_ELEMENT(to_json, from_struct, _element) \ + cJSON_AddStringToObject(to_json, #_element, (from_struct)->_element); + +#define S2J_JSON_ARRAY_SET_int_ELEMENT(to_json, from_struct, _element, index) \ + cJSON_AddItemToArray(to_json, cJSON_CreateNumber((from_struct)->_element[index])); + +#define S2J_JSON_ARRAY_SET_double_ELEMENT(to_json, from_struct, _element, index) \ + cJSON_AddItemToArray(to_json, cJSON_CreateNumber((from_struct)->_element[index])); + +#define S2J_JSON_ARRAY_SET_string_ELEMENT(to_json, from_struct, _element, index) \ + cJSON_AddItemToArray(to_json, cJSON_CreateString((from_struct)->_element[index])); + +#define S2J_JSON_ARRAY_SET_ELEMENT(to_json, from_struct, type, _element, index) \ + S2J_JSON_ARRAY_SET_##type##_ELEMENT(to_json, from_struct, _element, index) + + +#define S2J_CREATE_JSON_OBJECT(json_obj) \ + cJSON *json_obj = cJSON_CreateObject(); + +#define S2J_DELETE_JSON_OBJECT(json_obj) \ + cJSON_Delete(json_obj); + +#define S2J_JSON_SET_BASIC_ELEMENT(to_json, from_struct, type, _element) \ + S2J_JSON_SET_##type##_ELEMENT(to_json, from_struct, _element) + +#define S2J_JSON_SET_ARRAY_ELEMENT(to_json, from_struct, type, _element, size) \ + { \ + cJSON *array; \ + size_t index = 0; \ + array = cJSON_CreateArray(); \ + if (array) { \ + while (index < size) { \ + S2J_JSON_ARRAY_SET_ELEMENT(array, from_struct, type, _element, index++); \ + } \ + cJSON_AddItemToObject(to_json, #_element, array); \ + } \ + } + +#define S2J_JSON_SET_STRUCT_ELEMENT(child_json, to_json, child_struct, from_struct, type, _element) \ + type *child_struct = &((from_struct)->_element); \ + cJSON *child_json = cJSON_CreateObject(); \ + if (child_json) cJSON_AddItemToObject(to_json, #_element, child_json); + +#define S2J_CREATE_STRUCT_OBJECT(struct_obj, type) \ + cJSON *json_temp; \ + type *struct_obj = s2jHook.malloc_fn(sizeof(type)); \ + if (struct_obj) memset(struct_obj, 0, sizeof(type)); + +#define S2J_DELETE_STRUCT_OBJECT(struct_obj) \ + s2jHook.free_fn(struct_obj); + +#define S2J_STRUCT_GET_BASIC_ELEMENT(to_struct, from_json, type, _element) \ + S2J_STRUCT_GET_##type##_ELEMENT(to_struct, from_json, _element) + +#define S2J_STRUCT_GET_ARRAY_ELEMENT(to_struct, from_json, type, _element) \ + { \ + cJSON *array, *array_element; \ + size_t index = 0, size = 0; \ + array = cJSON_GetObjectItem(from_json, #_element); \ + if (array) { \ + size = cJSON_GetArraySize(array); \ + while (index < size) { \ + array_element = cJSON_GetArrayItem(array, index); \ + if (array_element) S2J_STRUCT_ARRAY_GET_ELEMENT(to_struct, array_element, type, _element, index++); \ + } \ + } \ + } + +#define S2J_STRUCT_GET_STRUCT_ELEMENT(child_struct, to_struct, child_json, from_json, type, _element) \ + type *child_struct = &((to_struct)->_element); \ + cJSON *child_json = cJSON_GetObjectItem(from_json, #_element); + +#ifdef __cplusplus +} +#endif + +#endif /* __S2JDEF_H__ */ diff --git a/libs/bin/arm64/libcJSON-arm64.so b/libs/bin/arm64/libcJSON-arm64.so new file mode 100755 index 0000000000000000000000000000000000000000..c5fb9cb9cadcb82369d814bf52c587132a2d2f77 GIT binary patch literal 33568 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 Xf#KWa*}qiv8#ZW+zZgVG-Sz($jB`g_ literal 0 HcmV?d00001 diff --git a/libs/bin/arm64/libcJSON-arm64.so.debug b/libs/bin/arm64/libcJSON-arm64.so.debug new file mode 100755 index 0000000000000000000000000000000000000000..afd41b94170d1af7f17412e89a223634819e1a71 GIT binary patch literal 113928 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%0D}7(@ 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

A$$Xzd`h*l=UZPovr=QK37vAf3(o6 z0^`7Rq3;Rktrq%bk<%+P>cI?*6`MEiJw2_NywVGDBxa*UB~1R`&Hy>+D!QE#2GSQQqxLT;rr$ zIy;+IXIt)RYVG=a#C4H4lG@k5vbD85?PRjO*|v_p{%mhk|B9w`XLnb&&zYEUnwm1* zO>Lds%Ue2|GX34XeN8PZ$%yV1J)PP9Y^Hqn?5k!*Gc~n#bagbf^!B!_ZOV4__pWtX zds|jyn=&g`tXNA$e7Pp#?9XFOzpwu0o5-x5mfpT>Q+swzrL&w2CF}a`>F8-%-QLlk z?dxetXPuQjnU?-+Q+I1?U$)=LcJ;07%{pz_{-*BbcW2Z6O~klD#Ps#|c67Cscl7nP zlvg+{nT$Hw)ZeXDmy@#o^68G!-E>oSb<-j$tJ!BbJyf>8NsDOe>8Fio6k%0M=gO=u zIh*{MWm|f)WN5Z4oh?syclGu6^mg}@PoJd=_(@lZDiWGm*`pQB^fS!PGg4Q`f4)*G zri^fUvpt>U5nZW{E^&a=YNjKNnC7#~OP&aqU z{HFOg)igD6%l36QwYPL-IWrPs7@ z=VIp4!iVAQw8@jdM zwUnAHcUrcfe{D~e0>86+HFc@Z?sSAo?f$x!)uu9wx+u^(XiVUqO;WhR*{+PKF6q?u z4VbCbvN;QSyI1HMT#(-^v-rPDAfr+XBLESq{~#yW`V zW-O%^?MkociO@t(TuC}GmhCK}u$`KLu3>&XCG&QxY=pV%hvotJ_u=_X||6xItaCOwi4v>t+jGpPKUejj#0($%vVf~= zqQW=GNQJcCdNsu6krs4zx9GqXGRe|xMw+&KQJ-&&)Z%KoSJKGmugnta@vUp~6sXfC z)a6vo%AU>+?q-r_ZwXvP*Z5j>iP3uVYVFshZCKQmXFc^oZT(Wd;EKpR5mDnxQ&UG@ zclzq9oBI0FEnQIq>!LotYVwg56Y!BXDX(c3_2oI;#;~sgs>=%IRS_2zE!IC;kpUd7 z0riWd2TQeyNtH2NYW^fAwM=bWuyx3Z^ZD}c(e%YB?_0Z~zhyb4bTLzDJ5X15f401> zYi0TJl^va#sWjxPTzgAjyHlQ7+eIaHN^;a0nNH+on&@0_wzGu`23D^}2Klg!I5 zU)e_GTDsb3CM($v8kvAwmM`zku0oEc+gV^WGew4c0>~F95tJ`>MN7K3+kZduZt-X; zNVm@PjzIt6{VURmLPt^nAZaiH^39?E<=4>t z7ymJtWuQFnZ>og``|;iv&N?Hl>feP!hYyMdP|@@-Xo)YQp&Ua ztQ+ z)2bbSIi*+ss!k}6_uMGojEYI2;y`+Tpgi7(qkQo!DIf{z59)?MdAv6_<-sT^w}b!h z5z6@6AMe*uzTM9(ynfQh1Lg4^9_54jg86My9_@?w_51GBT7vaO9_fxidA!#@)AG9l z3G01Zm9sv^+461so9M9W_Mx9TNXl zJZSm;g6%g>$_M>F*rN*#=K;?52mMIPhR}cPs4ny`AMq6?h;pFL9-{n#Ud_2ZU~sVg z<_}T6=RRHjA-+KS{xsDRI3E~d)yb1jYEJC3IgY4}^dIKn`oWi1^gUHj4(&U1d0v9) X|I<`U;pUAh|K`^;XI-E`AnW{p8FZe? literal 0 HcmV?d00001 diff --git a/libs/bin/x86/libcJSON-linux.so b/libs/bin/x86/libcJSON-linux.so new file mode 100755 index 0000000000000000000000000000000000000000..44e1fa9936c7157571195c65b54dfa166deb609b GIT binary patch literal 37360 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 z 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