mirror of https://gitee.com/openkylin/qemu.git
qapi: export the marshallers
Make it possible to call marshallers manually, without going through qmp_dispatch(). (this is currently only possible in middle-mode, but it's also useful in general) Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20160912091913.15831-9-marcandre.lureau@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
parent
5032a16d1d
commit
b804dc3bcd
|
@ -84,10 +84,7 @@ def gen_marshal_output(ret_type):
|
|||
|
||||
|
||||
def gen_marshal_proto(name):
|
||||
ret = 'void qmp_marshal_%s(QDict *args, QObject **ret, Error **errp)' % c_name(name)
|
||||
if not middle_mode:
|
||||
ret = 'static ' + ret
|
||||
return ret
|
||||
return 'void qmp_marshal_%s(QDict *args, QObject **ret, Error **errp)' % c_name(name)
|
||||
|
||||
|
||||
def gen_marshal_decl(name):
|
||||
|
@ -222,8 +219,7 @@ def visit_command(self, name, info, arg_type, ret_type,
|
|||
if ret_type and ret_type not in self._visited_ret_types:
|
||||
self._visited_ret_types.add(ret_type)
|
||||
self.defn += gen_marshal_output(ret_type)
|
||||
if middle_mode:
|
||||
self.decl += gen_marshal_decl(name)
|
||||
self.decl += gen_marshal_decl(name)
|
||||
self.defn += gen_marshal(name, arg_type, boxed, ret_type)
|
||||
if not middle_mode:
|
||||
self._regy += gen_register_command(name, success_response)
|
||||
|
|
Loading…
Reference in New Issue