Message ID | 20201116224143.1284278-8-ehabkost@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | qom: Use qlit to represent property defaults | expand |
On Tue, Nov 17, 2020 at 2:44 AM Eduardo Habkost <ehabkost@redhat.com> wrote: > The function will be used outside qom/object.c, to simplify the > field property code that sets the property default value. > > Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> > Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> --- > include/qom/object.h | 11 +++++++++++ > qom/object.c | 2 +- > 2 files changed, 12 insertions(+), 1 deletion(-) > > diff --git a/include/qom/object.h b/include/qom/object.h > index 2ab124b8f0..4234cc9b66 100644 > --- a/include/qom/object.h > +++ b/include/qom/object.h > @@ -1090,6 +1090,17 @@ ObjectProperty > *object_class_property_add(ObjectClass *klass, const char *name, > ObjectPropertyRelease *release, > void *opaque); > > +/** > + * object_property_set_default: > + * @prop: the property to set > + * @value: the value to be written to the property > + * > + * Set the property default value. > + * > + * Ownership of @value is transferred to the property. > + */ > +void object_property_set_default(ObjectProperty *prop, QObject *value); > + > /** > * object_property_set_default_bool: > * @prop: the property to set > diff --git a/qom/object.c b/qom/object.c > index 7c11bcd3b1..6b0d9d8c79 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1547,7 +1547,7 @@ static void object_property_init_defval(Object *obj, > ObjectProperty *prop) > visit_free(v); > } > > -static void object_property_set_default(ObjectProperty *prop, QObject > *defval) > +void object_property_set_default(ObjectProperty *prop, QObject *defval) > { > assert(!prop->defval); > assert(!prop->init); > -- > 2.28.0 > > >
diff --git a/include/qom/object.h b/include/qom/object.h index 2ab124b8f0..4234cc9b66 100644 --- a/include/qom/object.h +++ b/include/qom/object.h @@ -1090,6 +1090,17 @@ ObjectProperty *object_class_property_add(ObjectClass *klass, const char *name, ObjectPropertyRelease *release, void *opaque); +/** + * object_property_set_default: + * @prop: the property to set + * @value: the value to be written to the property + * + * Set the property default value. + * + * Ownership of @value is transferred to the property. + */ +void object_property_set_default(ObjectProperty *prop, QObject *value); + /** * object_property_set_default_bool: * @prop: the property to set diff --git a/qom/object.c b/qom/object.c index 7c11bcd3b1..6b0d9d8c79 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1547,7 +1547,7 @@ static void object_property_init_defval(Object *obj, ObjectProperty *prop) visit_free(v); } -static void object_property_set_default(ObjectProperty *prop, QObject *defval) +void object_property_set_default(ObjectProperty *prop, QObject *defval) { assert(!prop->defval); assert(!prop->init);
The function will be used outside qom/object.c, to simplify the field property code that sets the property default value. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> --- include/qom/object.h | 11 +++++++++++ qom/object.c | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-)