From: Marc-AndrĂ© Lureau <[email protected]>

A simple helper to set the default enum value from the integer value.

Signed-off-by: Marc-AndrĂ© Lureau <[email protected]>
Signed-off-by: Markus Armbruster <[email protected]>
---
 include/qom/object.h | 9 +++++++++
 qom/object.c         | 9 +++++++++
 2 files changed, 18 insertions(+)

diff --git a/include/qom/object.h b/include/qom/object.h
index cbadd4e3c0..28d3250de0 100644
--- a/include/qom/object.h
+++ b/include/qom/object.h
@@ -1239,6 +1239,15 @@ void object_property_set_default_bool(ObjectProperty 
*prop, bool value);
  */
 void object_property_set_default_str(ObjectProperty *prop, const char *value);
 
+/**
+ * object_property_set_default_enum:
+ * @prop: the property to set
+ * @value: the value to be written to the property
+ *
+ * Set the property default value.
+ */
+void object_property_set_default_enum(ObjectProperty *prop, int value);
+
 /**
  * object_property_set_default_list:
  * @prop: the property to set
diff --git a/qom/object.c b/qom/object.c
index c34b47312f..1d09315b32 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -1719,6 +1719,15 @@ void object_property_set_default_str(ObjectProperty 
*prop, const char *value)
     object_property_set_default(prop, QOBJECT(qstring_from_str(value)));
 }
 
+void object_property_set_default_enum(ObjectProperty *prop, int value)
+{
+    assert(prop && prop->qapi_type && prop->qapi_type->lookup);
+
+    object_property_set_default(prop, QOBJECT(qstring_from_str(
+        qapi_enum_lookup(prop->qapi_type->lookup, value)
+    )));
+}
+
 void object_property_set_default_list(ObjectProperty *prop)
 {
     object_property_set_default(prop, QOBJECT(qlist_new()));
-- 
2.55.0


Reply via email to