- if(!fmt || !*fmt) {
- jsonp_error_set(error, 1, 1, "Null or empty format string!");
+ return value;
+}
+
+json_t *json_pack(const char *fmt, ...)
+{
+ json_t *value;
+ va_list ap;
+
+ va_start(ap, fmt);
+ value = json_vpack_ex(NULL, 0, fmt, ap);
+ va_end(ap);
+
+ return value;
+}
+
+int json_vunpack_ex(json_t *root, json_error_t *error, size_t flags,
+ const char *fmt, va_list ap)
+{
+ scanner_t s;
+ va_list ap_copy;
+
+ if(!root) {
+ jsonp_error_init(error, "<root>");
+ jsonp_error_set(error, -1, -1, 0, "NULL root value");