+// janssonxx - C++ wrapper for jansson
+//
+// author: Sean Middleditch <sean@middleditch.us>
+//
+// janssonxx is free software; you can redistribute it and/or modify
+// it under the terms of the MIT license. See LICENSE for details.
+
+
#if !defined(JANSSONXX_H)
#define JANSSONXX_H 1
// set an object property (converts value to object is not one already)
Value& set_key(const char* key, const Value& value) {
- if (!is_object()) {
- json_decref(_value);
- _value = json_object();
- }
-
json_object_set(_value, key, value.as_json());
-
return *this;
}
// set an array index (converts value to object is not one already)
Value& set_at(unsigned int index, const Value& value) {
- if (!is_array()) {
- json_decref(_value);
- _value = json_array();
- }
-
if (index == size())
json_array_append(_value, value.as_json());
else
json_array_set(_value, index, value.as_json());
-
return *this;
}