On Tue, 20 Mar 2012 13:54:35 +0000 Federico Simoncelli <fsimo...@redhat.com> wrote:
> Signed-off-by: Federico Simoncelli <fsimo...@redhat.com> This looks good now, it's only missing a good description. > --- > scripts/qapi-commands.py | 14 +++++++------- > scripts/qapi-types.py | 4 ++-- > scripts/qapi-visit.py | 4 ++-- > scripts/qapi.py | 5 ++++- > 4 files changed, 15 insertions(+), 12 deletions(-) > > diff --git a/scripts/qapi-commands.py b/scripts/qapi-commands.py > index 3aabf61..30a24d2 100644 > --- a/scripts/qapi-commands.py > +++ b/scripts/qapi-commands.py > @@ -42,7 +42,7 @@ def generate_command_decl(name, args, ret_type): > return mcgen(''' > %(ret_type)s qmp_%(name)s(%(args)sError **errp); > ''', > - ret_type=c_type(ret_type), name=c_var(name), > args=arglist).strip() > + ret_type=c_type(ret_type), name=c_fun(name), > args=arglist).strip() > > def gen_sync_call(name, args, ret_type, indent=0): > ret = "" > @@ -59,7 +59,7 @@ def gen_sync_call(name, args, ret_type, indent=0): > %(retval)sqmp_%(name)s(%(args)serrp); > > ''', > - name=c_var(name), args=arglist, retval=retval).rstrip() > + name=c_fun(name), args=arglist, retval=retval).rstrip() > if ret_type: > ret += "\n" + mcgen('''' > if (!error_is_set(errp)) { > @@ -74,7 +74,7 @@ if (!error_is_set(errp)) { > def gen_marshal_output_call(name, ret_type): > if not ret_type: > return "" > - return "qmp_marshal_output_%s(retval, ret, errp);" % c_var(name) > + return "qmp_marshal_output_%s(retval, ret, errp);" % c_fun(name) > > def gen_visitor_output_containers_decl(ret_type): > ret = "" > @@ -198,16 +198,16 @@ static void > qmp_marshal_output_%(c_name)s(%(c_ret_type)s ret_in, QObject **ret_o > qapi_dealloc_visitor_cleanup(md); > } > ''', > - c_ret_type=c_type(ret_type), c_name=c_var(name), > + c_ret_type=c_type(ret_type), c_name=c_fun(name), > visitor=type_visitor(ret_type)) > > return ret > > def gen_marshal_input_decl(name, args, ret_type, middle_mode): > if middle_mode: > - return 'int qmp_marshal_input_%s(Monitor *mon, const QDict *qdict, > QObject **ret)' % c_var(name) > + return 'int qmp_marshal_input_%s(Monitor *mon, const QDict *qdict, > QObject **ret)' % c_fun(name) > else: > - return 'static void qmp_marshal_input_%s(QDict *args, QObject **ret, > Error **errp)' % c_var(name) > + return 'static void qmp_marshal_input_%s(QDict *args, QObject **ret, > Error **errp)' % c_fun(name) > > > > @@ -298,7 +298,7 @@ def gen_registry(commands): > registry += mcgen(''' > qmp_register_command("%(name)s", qmp_marshal_input_%(c_name)s); > ''', > - name=cmd['command'], c_name=c_var(cmd['command'])) > + name=cmd['command'], c_name=c_fun(cmd['command'])) > pop_indent() > ret = mcgen(''' > static void qmp_init_marshal(void) > diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py > index 727fb77..4a734f5 100644 > --- a/scripts/qapi-types.py > +++ b/scripts/qapi-types.py > @@ -100,7 +100,7 @@ typedef enum %(name)s > %(abbrev)s_%(value)s = %(i)d, > ''', > abbrev=de_camel_case(name).upper(), > - value=c_var(value).upper(), > + value=c_fun(value).upper(), > i=i) > i += 1 > > @@ -126,7 +126,7 @@ struct %(name)s > %(c_type)s %(c_name)s; > ''', > c_type=c_type(typeinfo[key]), > - c_name=c_var(key)) > + c_name=c_fun(key)) > > ret += mcgen(''' > }; > diff --git a/scripts/qapi-visit.py b/scripts/qapi-visit.py > index 54117d4..78c947c 100644 > --- a/scripts/qapi-visit.py > +++ b/scripts/qapi-visit.py > @@ -129,9 +129,9 @@ void visit_type_%(name)s(Visitor *m, %(name)s ** obj, > const char *name, Error ** > break; > ''', > abbrev = de_camel_case(name).upper(), > - enum = de_camel_case(key).upper(), > + enum = c_fun(de_camel_case(key)).upper(), > c_type=members[key], > - c_name=c_var(key)) > + c_name=c_fun(key)) > > ret += mcgen(''' > default: > diff --git a/scripts/qapi.py b/scripts/qapi.py > index 6e05469..e062336 100644 > --- a/scripts/qapi.py > +++ b/scripts/qapi.py > @@ -131,7 +131,10 @@ def camel_case(name): > return new_name > > def c_var(name): > - return '_'.join(name.split('-')).lstrip("*") > + return name.replace('-', '_').lstrip("*") > + > +def c_fun(name): > + return c_var(name).replace('.', '_') > > def c_list_type(name): > return '%sList' % name