From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:34858) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SztGB-0001PL-7Z for qemu-devel@nongnu.org; Fri, 10 Aug 2012 13:44:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SztG9-0001X9-5B for qemu-devel@nongnu.org; Fri, 10 Aug 2012 13:44:31 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44766) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SztG8-0001X5-T6 for qemu-devel@nongnu.org; Fri, 10 Aug 2012 13:44:29 -0400 From: Luiz Capitulino Date: Fri, 10 Aug 2012 14:43:58 -0300 Message-Id: <1344620653-29067-21-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1344620653-29067-1-git-send-email-lcapitulino@redhat.com> References: <1344620653-29067-1-git-send-email-lcapitulino@redhat.com> Subject: [Qemu-devel] [PATCH 20/35] qapi: generate correct enum names for camel case enums List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, aliguori@us.ibm.com, armbru@redhat.com, mdroth@linux.vnet.ibm.com, pbonzini@redhat.com, eblake@redhat.com An enum like GenericError in the schema, should generate GENERIC_ERROR and not GENERICERROR. Signed-off-by: Luiz Capitulino --- scripts/qapi-types.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py index 3ed9f04..9b7da96 100644 --- a/scripts/qapi-types.py +++ b/scripts/qapi-types.py @@ -79,6 +79,16 @@ const char *%(name)s_lookup[] = { ''') return ret +def generate_enum_name(name): + if name.isupper(): + return c_fun(name) + new_name = '' + for c in c_fun(name): + if c.isupper(): + new_name += '_' + new_name += c + return new_name.lstrip('_').upper() + def generate_enum(name, values): lookup_decl = mcgen(''' extern const char *%(name)s_lookup[]; @@ -100,7 +110,7 @@ typedef enum %(name)s %(abbrev)s_%(value)s = %(i)d, ''', abbrev=de_camel_case(name).upper(), - value=c_fun(value).upper(), + value=generate_enum_name(value), i=i) i += 1 -- 1.7.11.2.249.g31c7954.dirty