Markus Armbruster
2021-Oct-25 05:25 UTC
[Libguestfs] [PATCH 3/9] qapi: Eliminate QCO_NO_OPTIONS for a slight simplification
Signed-off-by: Markus Armbruster <armbru at redhat.com> --- include/qapi/qmp/dispatch.h | 1 - monitor/misc.c | 3 +-- scripts/qapi/commands.py | 5 +---- 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/include/qapi/qmp/dispatch.h b/include/qapi/qmp/dispatch.h index 075203dc67..0ce88200b9 100644 --- a/include/qapi/qmp/dispatch.h +++ b/include/qapi/qmp/dispatch.h @@ -21,7 +21,6 @@ typedef void (QmpCommandFunc)(QDict *, QObject **, Error **); typedef enum QmpCommandOptions { - QCO_NO_OPTIONS = 0x0, QCO_NO_SUCCESS_RESP = (1U << 0), QCO_ALLOW_OOB = (1U << 1), QCO_ALLOW_PRECONFIG = (1U << 2), diff --git a/monitor/misc.c b/monitor/misc.c index ffe7966870..3556b177f6 100644 --- a/monitor/misc.c +++ b/monitor/misc.c @@ -230,8 +230,7 @@ static void monitor_init_qmp_commands(void) qmp_init_marshal(&qmp_commands); - qmp_register_command(&qmp_commands, "device_add", qmp_device_add, - QCO_NO_OPTIONS); + qmp_register_command(&qmp_commands, "device_add", qmp_device_add, 0); QTAILQ_INIT(&qmp_cap_negotiation_commands); qmp_register_command(&qmp_cap_negotiation_commands, "qmp_capabilities", diff --git a/scripts/qapi/commands.py b/scripts/qapi/commands.py index 3654825968..c8a975528f 100644 --- a/scripts/qapi/commands.py +++ b/scripts/qapi/commands.py @@ -229,15 +229,12 @@ def gen_register_command(name: str, if coroutine: options += ['QCO_COROUTINE'] - if not options: - options = ['QCO_NO_OPTIONS'] - ret = mcgen(''' qmp_register_command(cmds, "%(name)s", qmp_marshal_%(c_name)s, %(opts)s); ''', name=name, c_name=c_name(name), - opts=" | ".join(options)) + opts=' | '.join(options) or 0) return ret -- 2.31.1
Juan Quintela
2021-Oct-25 07:17 UTC
[Libguestfs] [PATCH 3/9] qapi: Eliminate QCO_NO_OPTIONS for a slight simplification
Markus Armbruster <armbru at redhat.com> wrote:> Signed-off-by: Markus Armbruster <armbru at redhat.com>Reviewed-by: Juan Quintela <quintela at redhat.com>
John Snow
2021-Oct-25 19:08 UTC
[Libguestfs] [PATCH 3/9] qapi: Eliminate QCO_NO_OPTIONS for a slight simplification
On Mon, Oct 25, 2021 at 1:25 AM Markus Armbruster <armbru at redhat.com> wrote:> Signed-off-by: Markus Armbruster <armbru at redhat.com> > --- > include/qapi/qmp/dispatch.h | 1 - > monitor/misc.c | 3 +-- > scripts/qapi/commands.py | 5 +---- > 3 files changed, 2 insertions(+), 7 deletions(-) > > diff --git a/include/qapi/qmp/dispatch.h b/include/qapi/qmp/dispatch.h > index 075203dc67..0ce88200b9 100644 > --- a/include/qapi/qmp/dispatch.h > +++ b/include/qapi/qmp/dispatch.h > @@ -21,7 +21,6 @@ typedef void (QmpCommandFunc)(QDict *, QObject **, Error > **); > > typedef enum QmpCommandOptions > { > - QCO_NO_OPTIONS = 0x0, > QCO_NO_SUCCESS_RESP = (1U << 0), > QCO_ALLOW_OOB = (1U << 1), > QCO_ALLOW_PRECONFIG = (1U << 2), > diff --git a/monitor/misc.c b/monitor/misc.c > index ffe7966870..3556b177f6 100644 > --- a/monitor/misc.c > +++ b/monitor/misc.c > @@ -230,8 +230,7 @@ static void monitor_init_qmp_commands(void) > > qmp_init_marshal(&qmp_commands); > > - qmp_register_command(&qmp_commands, "device_add", qmp_device_add, > - QCO_NO_OPTIONS); > + qmp_register_command(&qmp_commands, "device_add", qmp_device_add, 0); > > QTAILQ_INIT(&qmp_cap_negotiation_commands); > qmp_register_command(&qmp_cap_negotiation_commands, > "qmp_capabilities", > diff --git a/scripts/qapi/commands.py b/scripts/qapi/commands.py > index 3654825968..c8a975528f 100644 > --- a/scripts/qapi/commands.py > +++ b/scripts/qapi/commands.py > @@ -229,15 +229,12 @@ def gen_register_command(name: str, > if coroutine: > options += ['QCO_COROUTINE'] > > - if not options: > - options = ['QCO_NO_OPTIONS'] > - > ret = mcgen(''' > qmp_register_command(cmds, "%(name)s", > qmp_marshal_%(c_name)s, %(opts)s); > ''', > name=name, c_name=c_name(name), > - opts=" | ".join(options)) > + opts=' | '.join(options) or 0) > return ret > > >I'm not a big fan of naked constants on the C side, but the generator simplification is nice. I suppose it's worth the trade-off if you like it better this way. "eh". Reviewed-by: John Snow <jsnow at redhat.com> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://listman.redhat.com/archives/libguestfs/attachments/20211025/070d3c22/attachment.htm>