@@ -20,7 +20,7 @@ matrix: | |||
dist: bionic | |||
compiler: gcc | |||
env: MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" | |||
# gcc 7 is the default on bionic | |||
- os: linux | |||
dist: bionic | |||
@@ -31,7 +31,7 @@ matrix: | |||
compiler: gcc | |||
env: MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" | |||
# clang | |||
# clang | |||
# xenial | |||
- os: linux | |||
dist: xenial | |||
@@ -54,7 +54,7 @@ matrix: | |||
packages: | |||
- clang-6.0 | |||
- cmake | |||
env: MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0" | |||
env: MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0" | |||
# clang-7 is the default on xenial and bionic | |||
- os: linux | |||
@@ -132,7 +132,7 @@ before_install: | |||
before_script: | |||
# XXX osx on travis doesn't work w/ set -e, so turn it off :( | |||
- set +e | |||
- set +e | |||
- mkdir -p build || echo "Failed to mkdir build" | |||
- cd build || echo "Failed to cd build" | |||
- cmake .. || echo "Failed to run cmake" | |||
@@ -356,7 +356,7 @@ if (DOXYGEN_FOUND) | |||
add_custom_target(doc | |||
COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_SOURCE_DIR}/Doxyfile | |||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}) | |||
# request to configure the file | |||
configure_file(Doxyfile Doxyfile) | |||
@@ -753,7 +753,7 @@ WARN_LOGFILE = | |||
# spaces. | |||
# Note: If this tag is empty the current directory is searched. | |||
INPUT = | |||
INPUT = | |||
# This tag can be used to specify the character encoding of the source files | |||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses | |||
@@ -143,9 +143,9 @@ cmake-configure can take a few options. | |||
| options | Description| | |||
| ---- | ---- | | |||
| prefix=PREFIX | install architecture-independent files in PREFIX | | |||
| prefix=PREFIX | install architecture-independent files in PREFIX | | |||
| enable-threading | Enable code to support partly multi-threaded use | | |||
| enable-rdrand | Enable RDRAND Hardware RNG Hash Seed generation on supported x86/x64 platforms. | | |||
| enable-rdrand | Enable RDRAND Hardware RNG Hash Seed generation on supported x86/x64 platforms. | | |||
| enable-shared | build shared libraries [default=yes] | | |||
| enable-static | build static libraries [default=yes] | | |||
| disable-Bsymbolic | Avoid linking with -Bsymbolic-function | | |||
@@ -175,7 +175,7 @@ make test | |||
make USE_VALGRIND=0 test # optionally skip using valgrind | |||
``` | |||
If a test fails, check `Testing/Temporary/LastTest.log`, | |||
If a test fails, check `Testing/Temporary/LastTest.log`, | |||
`tests/testSubDir/${testname}/${testname}.vg.out`, and other similar files. | |||
If there is insufficient output try: | |||
```sh | |||
@@ -11,7 +11,7 @@ spaces for continuation lines have been abandoned in favor of the | |||
convenience of using clang-format. | |||
Refer to the .clang-format file for details, and run the tool before commit: | |||
clang-format -i somefile.c foo.h | |||
clang-format -i somefile.c foo.h | |||
For sections of code that would be significantly negatively impacted, surround | |||
them with magic comments to disable formatting: | |||
@@ -197,7 +197,7 @@ int json_object_put(struct json_object *jso) | |||
#if defined(HAVE_ATOMIC_BUILTINS) && defined(ENABLE_THREADING) | |||
/* Note: this only allow the refcount to remain correct | |||
* when multiple threads are adjusting it. It is still an error | |||
* when multiple threads are adjusting it. It is still an error | |||
* for a thread to decrement the refcount if it doesn't "own" it, | |||
* as that can result in the thread that loses the race to 0 | |||
* operating on an already-freed object. | |||
@@ -377,7 +377,7 @@ JSON_EXPORT int json_object_object_add(struct json_object *obj, const char *key, | |||
* @param obj the json_object instance | |||
* @param key the object field name (a private copy will be duplicated) | |||
* @param val a json_object or NULL member to associate with the given field | |||
* @param opts process-modifying options. To specify multiple options, use | |||
* @param opts process-modifying options. To specify multiple options, use | |||
* arithmetic or (OPT1|OPT2) | |||
*/ | |||
JSON_EXPORT int json_object_object_add_ex(struct json_object *obj, const char *const key, | |||
@@ -585,7 +585,7 @@ JSON_EXPORT struct json_object *json_object_array_get_idx(const struct json_obje | |||
/** Delete an elements from a specified index in an array (a json_object of type json_type_array) | |||
* | |||
* The reference count will be decremented for each of the deleted objects. If there | |||
* are no more owners of an element that is being deleted, then the value is | |||
* are no more owners of an element that is being deleted, then the value is | |||
* freed. Otherwise, the reference to the value will remain in memory. | |||
* | |||
* @param obj the json_object instance | |||
@@ -617,8 +617,8 @@ JSON_EXPORT struct json_object *json_object_new_boolean(json_bool b); | |||
JSON_EXPORT json_bool json_object_get_boolean(const struct json_object *obj); | |||
/** Set the json_bool value of a json_object | |||
* | |||
* The type of obj is checked to be a json_type_boolean and 0 is returned | |||
* | |||
* The type of obj is checked to be a json_type_boolean and 0 is returned | |||
* if it is not without any further actions. If type of obj is json_type_boolean | |||
* the object value is changed to new_value | |||
* | |||
@@ -667,8 +667,8 @@ JSON_EXPORT struct json_object *json_object_new_uint64(uint64_t i); | |||
JSON_EXPORT int32_t json_object_get_int(const struct json_object *obj); | |||
/** Set the int value of a json_object | |||
* | |||
* The type of obj is checked to be a json_type_int and 0 is returned | |||
* | |||
* The type of obj is checked to be a json_type_int and 0 is returned | |||
* if it is not without any further actions. If type of obj is json_type_int | |||
* the object value is changed to new_value | |||
* | |||
@@ -725,8 +725,8 @@ JSON_EXPORT int64_t json_object_get_int64(const struct json_object *obj); | |||
JSON_EXPORT uint64_t json_object_get_uint64(const struct json_object *obj); | |||
/** Set the int64_t value of a json_object | |||
* | |||
* The type of obj is checked to be a json_type_int and 0 is returned | |||
* | |||
* The type of obj is checked to be a json_type_int and 0 is returned | |||
* if it is not without any further actions. If type of obj is json_type_int | |||
* the object value is changed to new_value | |||
* | |||
@@ -851,8 +851,8 @@ JSON_EXPORT int json_object_double_to_json_string(struct json_object *jso, struc | |||
JSON_EXPORT double json_object_get_double(const struct json_object *obj); | |||
/** Set the double value of a json_object | |||
* | |||
* The type of obj is checked to be a json_type_double and 0 is returned | |||
* | |||
* The type of obj is checked to be a json_type_double and 0 is returned | |||
* if it is not without any further actions. If type of obj is json_type_double | |||
* the object value is changed to new_value | |||
* | |||
@@ -924,8 +924,8 @@ JSON_EXPORT int json_object_get_string_len(const struct json_object *obj); | |||
JSON_EXPORT int json_object_set_string(json_object *obj, const char *new_value); | |||
/** Set the string value of a json_object str | |||
* | |||
* The type of obj is checked to be a json_type_string and 0 is returned | |||
* | |||
* The type of obj is checked to be a json_type_string and 0 is returned | |||
* if it is not without any further actions. If type of obj is json_type_string | |||
* the object value is changed to new_value | |||
* | |||
@@ -969,7 +969,7 @@ JSON_EXPORT int json_object_equal(struct json_object *obj1, struct json_object * | |||
* When shallow_copy is called *dst will be NULL, and must be non-NULL when it returns. | |||
* src will never be NULL. | |||
* | |||
* If shallow_copy sets the serializer on an object, return 2 to indicate to | |||
* If shallow_copy sets the serializer on an object, return 2 to indicate to | |||
* json_object_deep_copy that it should not attempt to use the standard userdata | |||
* copy function. | |||
* | |||
@@ -980,7 +980,7 @@ typedef int(json_c_shallow_copy_fn)(json_object *src, json_object *parent, const | |||
/** | |||
* The default shallow copy implementation for use with json_object_deep_copy(). | |||
* This simply calls the appropriate json_object_new_<type>() function and | |||
* This simply calls the appropriate json_object_new_<type>() function and | |||
* copies over the serializer function (_to_json_string internal field of | |||
* the json_object structure) but not any _userdata or _user_delete values. | |||
* | |||
@@ -25,7 +25,7 @@ typedef int(json_c_visit_userfunc)(json_object *jso, int flags, json_object *par | |||
* userfunc must return one of the defined return values, to indicate | |||
* whether and how to continue visiting nodes, or one of various ways to stop. | |||
* | |||
* Returns 0 if nodes were visited successfully, even if some were | |||
* Returns 0 if nodes were visited successfully, even if some were | |||
* intentionally skipped due to what userfunc returned. | |||
* Returns <0 if an error occurred during iteration, including if | |||
* userfunc returned JSON_C_VISIT_RETURN_ERROR. | |||
@@ -58,7 +58,7 @@ JSON_EXPORT int json_c_visit(json_object *jso, int future_flags, json_c_visit_us | |||
* This json_c_visit_userfunc return value indicates that iteration | |||
* of the fields/elements of the <b>containing</b> object should stop | |||
* and continue "popped up" a level of the object hierarchy. | |||
* For example, returning this when handling arg will result in | |||
* For example, returning this when handling arg will result in | |||
* arg3 and any other fields being skipped. The next call to userfunc | |||
* will be the JSON_C_VISIT_SECOND call on "foo", followed by a userfunc | |||
* call on "bar". | |||
@@ -15,7 +15,7 @@ | |||
/** | |||
* @file | |||
* @brief Internal string buffer handing. Unless you're writing a | |||
* @brief Internal string buffer handing. Unless you're writing a | |||
* json_object_to_json_string_fn implementation for use with | |||
* json_object_set_serializer() direct use of this is not | |||
* recommended. | |||
@@ -90,7 +90,7 @@ run_output_test() | |||
fi | |||
TEST_COMMAND="$1" | |||
shift | |||
if [ -z "${TEST_OUTPUT}" ] ; then | |||
if [ -z "${TEST_OUTPUT}" ] ; then | |||
TEST_OUTPUT=${TEST_COMMAND} | |||
fi | |||
@@ -1,4 +1,4 @@ | |||
/* Copyright (C) 2016 by Rainer Gerhards | |||
/* Copyright (C) 2016 by Rainer Gerhards | |||
* Released under ASL 2.0 */ | |||
#include "config.h" | |||
#include "json_object.h" | |||