From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44876) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WnSJy-00031D-AD for qemu-devel@nongnu.org; Thu, 22 May 2014 08:42:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WnSJs-0002AX-Af for qemu-devel@nongnu.org; Thu, 22 May 2014 08:42:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:13409) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WnSJs-0002AM-2i for qemu-devel@nongnu.org; Thu, 22 May 2014 08:42:00 -0400 From: Amos Kong Date: Thu, 22 May 2014 20:41:43 +0800 Message-Id: <1400762504-22751-3-git-send-email-akong@redhat.com> In-Reply-To: <1400762504-22751-1-git-send-email-akong@redhat.com> References: <1400762504-22751-1-git-send-email-akong@redhat.com> Subject: [Qemu-devel] [PATCH v5 2/3] qapi: add const prefix to 'char *' insider c_type() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: pbonzini@redhat.com, lcapitulino@redhat.com, mdroth@linux.vnet.ibm.com, armbru@redhat.com It's ugly to add const prefix for parameter type by an if statement outside c_type(). This patch adds a parameter to do it. Signed-off-by: Amos Kong Suggested-by: Markus Armbruster Reviewed-by: Eric Blake Reviewed-by: Paolo Bonzini Reviewed-by: Markus Armbruster --- scripts/qapi-commands.py | 4 +--- scripts/qapi.py | 4 +++- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/qapi-commands.py b/scripts/qapi-commands.py index 7d93d01..34f200a 100644 --- a/scripts/qapi-commands.py +++ b/scripts/qapi-commands.py @@ -29,9 +29,7 @@ def type_visitor(name): def generate_command_decl(name, args, ret_type): arglist="" for argname, argtype, optional, structured in parse_args(args): - argtype = c_type(argtype) - if argtype == "char *": - argtype = "const char *" + argtype = c_type(argtype, is_param=True) if optional: arglist += "bool has_%s, " % c_var(argname) arglist += "%s %s, " % (argtype, c_var(argname)) diff --git a/scripts/qapi.py b/scripts/qapi.py index 86e9608..dc690bb 100644 --- a/scripts/qapi.py +++ b/scripts/qapi.py @@ -470,8 +470,10 @@ def find_enum(name): def is_enum(name): return find_enum(name) != None -def c_type(name): +def c_type(name, is_param=False): if name == 'str': + if is_param: + return 'const char *' return 'char *' elif name == 'int': return 'int64_t' -- 1.9.0