]> git.ipfire.org Git - thirdparty/qemu.git/blobdiff - qom/object.c
hw/acpi: move object_resolve_type_unambiguous to core QOM
[thirdparty/qemu.git] / qom / object.c
index 2c4c64d2b632979743c4dac2288e958817824e8d..d4a001cf4117a680a0b78825340fac303e065557 100644 (file)
@@ -2229,6 +2229,22 @@ Object *object_resolve_path_at(Object *parent, const char *path)
     return object_resolve_abs_path(parent, parts, TYPE_OBJECT);
 }
 
+Object *object_resolve_type_unambiguous(const char *typename, Error **errp)
+{
+    bool ambig;
+    Object *o = object_resolve_path_type("", typename, &ambig);
+
+    if (ambig) {
+        error_setg(errp, "More than one object of type %s", typename);
+        return NULL;
+    }
+    if (!o) {
+        error_setg(errp, "No object found of type %s", typename);
+        return NULL;
+    }
+    return o;
+}
+
 typedef struct StringProperty
 {
     char *(*get)(Object *, Error **);