qom: introduce get/set methods for Property
authorPaolo Bonzini <pbonzini@redhat.com>
Sun, 18 Dec 2011 16:05:09 +0000 (17:05 +0100)
committerAnthony Liguori <aliguori@us.ibm.com>
Mon, 19 Dec 2011 16:27:34 +0000 (10:27 -0600)
commit80e555c2418c50e5130fed6245537dfd2ba4bebd
treea0ba3b68b8b4e241c4669ce5df5e49c7e5b04d5d
parent6aced82c4f304c47d7affb8371edda093b11c81a
qom: introduce get/set methods for Property

This patch adds a visitor interface to Property.  This way, QOM will be
able to expose Properties that access a fixed field in a struct without
exposing also the everything-is-a-string "feature" of qdev properties.

Whenever the printed representation in both QOM and qdev (which is
typically the case for device backends), parse/print code can be reused
via get_generic/set_generic.  Dually, whenever multiple PropertyInfos
have the same representation in both the struct and the visitors the
code can be reused (for example among all of int32/uint32/hex32).

Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
hw/qdev-addr.c
hw/qdev-properties.c
hw/qdev.h