Skip to content

Commit

Permalink
scripts: use build_ prefix for string not piped through cgen()
Browse files Browse the repository at this point in the history
The gen_ prefix is awkward.  Generated C should go through cgen()
exactly once (see commit 1f9a7a1).  The common way to get this wrong is
passing a foo=gen_foo() keyword argument to mcgen().  I'd like us to
adopt a naming convention where gen_ means "something that's been piped
through cgen(), and thus must not be passed to cgen() or mcgen()".
Requires renaming gen_params(), gen_marshal_proto() and
gen_event_send_proto().

Suggested-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20170601124143.10915-1-marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
  • Loading branch information
elmarco authored and Markus Armbruster committed Jul 12, 2017
1 parent 8a4613a commit 086ee7a
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 11 deletions.
8 changes: 4 additions & 4 deletions scripts/qapi-commands.py
Expand Up @@ -21,7 +21,7 @@ def gen_command_decl(name, arg_type, boxed, ret_type):
''',
c_type=(ret_type and ret_type.c_type()) or 'void',
c_name=c_name(name),
params=gen_params(arg_type, boxed, 'Error **errp'))
params=build_params(arg_type, boxed, 'Error **errp'))


def gen_call(name, arg_type, boxed, ret_type):
Expand Down Expand Up @@ -82,7 +82,7 @@ def gen_marshal_output(ret_type):
c_type=ret_type.c_type(), c_name=ret_type.c_name())


def gen_marshal_proto(name):
def build_marshal_proto(name):
return ('void qmp_marshal_%s(QDict *args, QObject **ret, Error **errp)'
% c_name(name))

Expand All @@ -91,7 +91,7 @@ def gen_marshal_decl(name):
return mcgen('''
%(proto)s;
''',
proto=gen_marshal_proto(name))
proto=build_marshal_proto(name))


def gen_marshal(name, arg_type, boxed, ret_type):
Expand All @@ -103,7 +103,7 @@ def gen_marshal(name, arg_type, boxed, ret_type):
{
Error *err = NULL;
''',
proto=gen_marshal_proto(name))
proto=build_marshal_proto(name))

if ret_type:
ret += mcgen('''
Expand Down
12 changes: 6 additions & 6 deletions scripts/qapi-event.py
Expand Up @@ -14,21 +14,21 @@
from qapi import *


def gen_event_send_proto(name, arg_type, boxed):
def build_event_send_proto(name, arg_type, boxed):
return 'void qapi_event_send_%(c_name)s(%(param)s)' % {
'c_name': c_name(name.lower()),
'param': gen_params(arg_type, boxed, 'Error **errp')}
'param': build_params(arg_type, boxed, 'Error **errp')}


def gen_event_send_decl(name, arg_type, boxed):
return mcgen('''
%(proto)s;
''',
proto=gen_event_send_proto(name, arg_type, boxed))
proto=build_event_send_proto(name, arg_type, boxed))


# Declare and initialize an object 'qapi' using parameters from gen_params()
# Declare and initialize an object 'qapi' using parameters from build_params()
def gen_param_var(typ):
assert not typ.variants
ret = mcgen('''
Expand All @@ -42,7 +42,7 @@ def gen_param_var(typ):
if memb.optional:
ret += 'has_' + c_name(memb.name) + sep
if memb.type.name == 'str':
# Cast away const added in gen_params()
# Cast away const added in build_params()
ret += '(char *)'
ret += c_name(memb.name)
ret += mcgen('''
Expand Down Expand Up @@ -72,7 +72,7 @@ def gen_event_send(name, arg_type, boxed):
Error *err = NULL;
QMPEventFuncEmit emit;
''',
proto=gen_event_send_proto(name, arg_type, boxed))
proto=build_event_send_proto(name, arg_type, boxed))

if arg_type and not arg_type.is_empty():
ret += mcgen('''
Expand Down
2 changes: 1 addition & 1 deletion scripts/qapi.py
Expand Up @@ -1897,7 +1897,7 @@ def gen_enum(name, values, prefix=None):
return ret


def gen_params(arg_type, boxed, extra):
def build_params(arg_type, boxed, extra):
if not arg_type:
assert not boxed
return extra
Expand Down

0 comments on commit 086ee7a

Please sign in to comment.