From: Peter Krempa Date: Mon, 26 Jun 2017 09:32:35 +0000 (+0200) Subject: util: json: Add virJSONValueIsObject X-Git-Tag: v3.6.0-rc1~258 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cadd96b3ea56db02b90a0971bd9cc46a2a883cc1;p=thirdparty%2Flibvirt.git util: json: Add virJSONValueIsObject Allows testing whether a virJSONValue is an object. --- diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 888412ac78..a2addca9c3 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -1907,6 +1907,7 @@ virJSONValueGetString; virJSONValueHashFree; virJSONValueIsArray; virJSONValueIsNull; +virJSONValueIsObject; virJSONValueNewArray; virJSONValueNewArrayFromBitmap; virJSONValueNewBoolean; diff --git a/src/util/virjson.c b/src/util/virjson.c index b49b29b0fb..76d1d36f17 100644 --- a/src/util/virjson.c +++ b/src/util/virjson.c @@ -904,6 +904,16 @@ virJSONValueObjectGetValue(virJSONValuePtr object, } +bool +virJSONValueIsObject(virJSONValuePtr object) +{ + if (object) + return object->type == VIR_JSON_TYPE_OBJECT; + else + return false; +} + + bool virJSONValueIsArray(virJSONValuePtr array) { diff --git a/src/util/virjson.h b/src/util/virjson.h index 14b74c0617..c9d9752de1 100644 --- a/src/util/virjson.h +++ b/src/util/virjson.h @@ -114,6 +114,8 @@ virJSONValuePtr virJSONValueObjectGet(virJSONValuePtr object, const char *key); virJSONValuePtr virJSONValueObjectGetByType(virJSONValuePtr object, const char *key, virJSONType type); +bool virJSONValueIsObject(virJSONValuePtr object); + bool virJSONValueIsArray(virJSONValuePtr array); ssize_t virJSONValueArraySize(const virJSONValue *array); virJSONValuePtr virJSONValueArrayGet(virJSONValuePtr object, unsigned int element);