[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 2/5] qom: add description field in ObjectProperty
From: |
arei.gonglei |
Subject: |
[Qemu-devel] [PATCH v4 2/5] qom: add description field in ObjectProperty struct |
Date: |
Tue, 30 Sep 2014 11:02:36 +0800 |
From: Gonglei <address@hidden>
The descriptions can serve as documentation in the code,
and they can be used to provide better help.
When we call object_property_add_alias() adding alias properties to
the source object on the target Object, set the object property's
description to the source object property's.
Cc: Paolo Bonzini <address@hidden>
Cc: Michael S. Tsirkin <address@hidden>
Cc: Markus Armbruster <address@hidden>
Signed-off-by: Gonglei <address@hidden>
---
include/qom/object.h | 15 +++++++++++++++
qom/object.c | 20 ++++++++++++++++++++
2 files changed, 35 insertions(+)
diff --git a/include/qom/object.h b/include/qom/object.h
index 8a05a81..ddc600d 100644
--- a/include/qom/object.h
+++ b/include/qom/object.h
@@ -338,6 +338,7 @@ typedef struct ObjectProperty
{
gchar *name;
gchar *type;
+ gchar *description;
ObjectPropertyAccessor *get;
ObjectPropertyAccessor *set;
ObjectPropertyResolve *resolve;
@@ -1274,6 +1275,20 @@ void object_property_add_alias(Object *obj, const char
*name,
Object *target_obj, const char *target_name,
Error **errp);
+
+/**
+ * object_property_set_description:
+ * @obj: the object to set a property's description to
+ * @name: the name of the property
+ * @description: the description of the property on the object
+ * @errp: if an error occurs, a pointer to an area to store the error
+ *
+ * Set an object property's description.
+ *
+ */
+void object_property_set_description(Object *obj, const char *name,
+ const char *description, Error **errp);
+
/**
* object_child_foreach:
* @obj: the object whose children will be navigated
diff --git a/qom/object.c b/qom/object.c
index 575291f..a751367 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -369,6 +369,7 @@ static void object_property_del_all(Object *obj)
g_free(prop->name);
g_free(prop->type);
+ g_free(prop->description);
g_free(prop);
}
}
@@ -803,6 +804,7 @@ void object_property_del(Object *obj, const char *name,
Error **errp)
g_free(prop->name);
g_free(prop->type);
+ g_free(prop->description);
g_free(prop);
}
@@ -1672,10 +1674,28 @@ void object_property_add_alias(Object *obj, const char
*name,
}
op->resolve = property_resolve_alias;
+ object_property_set_description(obj, name,
+ target_prop->description,
+ &error_abort);
+
out:
g_free(prop_type);
}
+void object_property_set_description(Object *obj, const char *name,
+ const char *description, Error **errp)
+{
+ ObjectProperty *op;
+
+ op = object_property_find(obj, name, errp);
+ if (!op) {
+ return;
+ }
+
+ g_free(op->description);
+ op->description = g_strdup(description);
+}
+
static void object_instance_init(Object *obj)
{
object_property_add_str(obj, "type", qdev_get_type, NULL, NULL);
--
2.0.4
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, (continued)
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Michael S. Tsirkin, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Paolo Bonzini, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Michael S. Tsirkin, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Paolo Bonzini, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Michael S. Tsirkin, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Paolo Bonzini, 2014/09/30
- Re: [Qemu-devel] [PATCH v4 1/5] qdev: add description field in PropertyInfo struct, Gonglei, 2014/09/30
[Qemu-devel] [PATCH v4 5/5] qdev: drop legacy_name from qdev properties, arei.gonglei, 2014/09/29
[Qemu-devel] [PATCH v4 2/5] qom: add description field in ObjectProperty struct,
arei.gonglei <=
Re: [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct, Paolo Bonzini, 2014/09/30
Re: [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct, Michael S. Tsirkin, 2014/09/30
Re: [Qemu-devel] [PATCH v4 0/5] add description field in ObjectProperty and PropertyInfo struct, Michael S. Tsirkin, 2014/09/30