From 66def00922933ec24ff98cb8a67c7bd2ab283c79 Mon Sep 17 00:00:00 2001 From: Markus Armbruster <armbru@redhat.com> Date: Mon, 19 Feb 2018 17:38:50 -0500 Subject: [PATCH] qapi: De-duplicate parameter list generation Generated qapi-event.[ch] lose line breaks. No change otherwise. Backports commit 03b4367a556179e3e59affa535493427bd009e9d from qemu --- qemu/scripts/qapi.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/qemu/scripts/qapi.py b/qemu/scripts/qapi.py index 8365792d..8496c2f8 100644 --- a/qemu/scripts/qapi.py +++ b/qemu/scripts/qapi.py @@ -1465,6 +1465,22 @@ extern const char *const %(c_name)s_lookup[]; c_name=c_name(name)) return ret +def gen_params(arg_type, extra): + if not arg_type: + return extra + assert not arg_type.variants + ret = '' + sep = '' + for memb in arg_type.members: + ret += sep + sep = ', ' + if memb.optional: + ret += 'bool has_%s, ' % c_name(memb.name) + ret += '%s %s' % (memb.type.c_type(is_param=True), c_name(memb.name)) + if extra: + ret += sep + extra + return ret + # # Common command line parsing #