V3->V4: * drop the code about manually define interface 'user-creatable' as abstract. * add test case for the generated enum value str. * split the code about adding descriptions to class properties into a separate patch. * minor changes in user_creatable_help_func to ignore interface TYPE_USER_CREATABLE.
V2->v3: * make type user-creatable abstract. * auto generate enum value strings during qemu configuration.(Borrowwed Daniel's code) * save the generated enum value strings into member description of ObjectProperty. * drop the judgement logic of whether a property has an enumeration type anymore, output member description of ObjectProperty directly. * at least, user_creatable_help_func should be put after 'object_property_add_child(object_get_root(), "machine",OBJECT(current_machine), ...)', because host_memory_backend_init needs to access an instance of type machine. V1->V2: * Output the acceptable values of enum types by "-object TYPE-NAME,help" Lin Ma (5): qom: Add interface check in object_class_is_abstract qapi: auto generate enum value strings qapi: add test case for the generated enum value str backends: add description for enum class properties object: Add 'help' option for all available backends and properties backends/hostmem.c | 4 +++ crypto/secret.c | 4 +++ crypto/tlscreds.c | 4 +++ include/qom/object_interfaces.h | 2 ++ net/filter.c | 4 +++ qemu-options.hx | 7 +++++- qom/object.c | 6 ++++- qom/object_interfaces.c | 55 +++++++++++++++++++++++++++++++++++++++++ scripts/qapi-types.py | 2 ++ scripts/qapi.py | 9 +++++++ tests/test-qmp-commands.c | 18 ++++++++++++++ vl.c | 5 ++++ 12 files changed, 118 insertions(+), 2 deletions(-) -- 2.9.2