mirror of
https://github.com/DaveGamble/cJSON.git
synced 2023-08-10 21:13:26 +03:00
060e6563c0
Also add a new #define to cJSON.h for SetNumberValue. git-svn-id: svn://svn.code.sf.net/p/cjson/code@66 e3330c51-1366-4df0-8b21-3ccf24e3d50e
23 lines
1.1 KiB
C
23 lines
1.1 KiB
C
#include "cJSON.h"
|
|
|
|
// Implement RFC6901 (https://tools.ietf.org/html/rfc6901) JSON Pointer spec.
|
|
cJSON *cJSONUtils_GetPointer(cJSON *object,const char *pointer);
|
|
|
|
// Implement RFC6902 (https://tools.ietf.org/html/rfc6902) JSON Patch spec.
|
|
cJSON* cJSONUtils_GeneratePatches(cJSON *from,cJSON *to);
|
|
void cJSONUtils_AddPatchToArray(cJSON *array,const char *op,const char *path,cJSON *val); // Utility for generating patch array entries.
|
|
int cJSONUtils_ApplyPatches(cJSON *object,cJSON *patches); // Returns 0 for success.
|
|
|
|
// Note that ApplyPatches is NOT atomic on failure. To implement an atomic ApplyPatches, use:
|
|
//int cJSONUtils_AtomicApplyPatches(cJSON **object, cJSON *patches)
|
|
//{
|
|
// cJSON *modme=cJSON_Duplicate(*object,1);
|
|
// int error=cJSONUtils_ApplyPatches(modme,patches);
|
|
// if (!error) {cJSON_Delete(*object);*object=modme;}
|
|
// else cJSON_Delete(modme);
|
|
// return error;
|
|
//}
|
|
// Code not added to library since this strategy is a LOT slower.
|
|
|
|
char *cJSONUtils_FindPointerFromObjectTo(cJSON *object,cJSON *target); // Given a root object and a target object, construct a pointer from one to the other.
|