From patchwork Tue Jun 16 14:40:47 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Armbruster X-Patchwork-Id: 485047 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id B4F7D14027C for ; Wed, 17 Jun 2015 00:53:05 +1000 (AEST) Received: from localhost ([::1]:40749 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z4sEZ-0005pJ-N5 for incoming@patchwork.ozlabs.org; Tue, 16 Jun 2015 10:53:03 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46006) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z4sDH-0003OZ-09 for qemu-devel@nongnu.org; Tue, 16 Jun 2015 10:51:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z4sDC-0002yI-LC for qemu-devel@nongnu.org; Tue, 16 Jun 2015 10:51:42 -0400 Received: from mx1.redhat.com ([209.132.183.28]:43806) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z4s2v-0005Zq-Tm for qemu-devel@nongnu.org; Tue, 16 Jun 2015 10:41:02 -0400 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (Postfix) with ESMTPS id 86D8D2EBCF2; Tue, 16 Jun 2015 14:41:01 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-35.ams2.redhat.com [10.36.116.35]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t5GEexOg007551 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 16 Jun 2015 10:41:00 -0400 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 398903008AAF; Tue, 16 Jun 2015 16:40:59 +0200 (CEST) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Tue, 16 Jun 2015 16:40:47 +0200 Message-Id: <1434465658-20782-5-git-send-email-armbru@redhat.com> In-Reply-To: <1434465658-20782-1-git-send-email-armbru@redhat.com> References: <1434465658-20782-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.27 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 209.132.183.28 Cc: mdroth@linux.vnet.ibm.com Subject: [Qemu-devel] [PATCH v2 04/15] qapi: Improve a couple of confusing variable names X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org old name new name ---------------------------- input_file fname input_relname fname input_fname abs_fname include_path incl_abs_fname parent_info incl_info Signed-off-by: Markus Armbruster Reviewed-by: Eric Blake --- scripts/qapi.py | 45 +++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/scripts/qapi.py b/scripts/qapi.py index 683669e..c2eb12b 100644 --- a/scripts/qapi.py +++ b/scripts/qapi.py @@ -75,7 +75,7 @@ def error_path(parent): class QAPISchemaError(Exception): def __init__(self, schema, msg): - self.input_file = schema.input_file + self.fname = schema.fname self.msg = msg self.col = 1 self.line = schema.line @@ -84,11 +84,11 @@ class QAPISchemaError(Exception): self.col = (self.col + 7) % 8 + 1 else: self.col += 1 - self.info = schema.parent_info + self.info = schema.incl_info def __str__(self): return error_path(self.info) + \ - "%s:%d:%d: %s" % (self.input_file, self.line, self.col, self.msg) + "%s:%d:%d: %s" % (self.fname, self.line, self.col, self.msg) class QAPIExprError(Exception): def __init__(self, expr_info, msg): @@ -101,18 +101,18 @@ class QAPIExprError(Exception): class QAPISchema: - def __init__(self, fp, input_relname=None, include_hist=[], - previously_included=[], parent_info=None): + def __init__(self, fp, fname = None, include_hist = [], + previously_included = [], incl_info = None): """ include_hist is a stack used to detect inclusion cycles previously_included is a global state used to avoid multiple inclusions of the same file""" - input_fname = os.path.abspath(fp.name) - if input_relname is None: - input_relname = fp.name - self.input_file = input_relname - self.include_hist = include_hist + [(input_relname, input_fname)] - previously_included.append(input_fname) - self.parent_info = parent_info + abs_fname = os.path.abspath(fp.name) + if fname is None: + fname = fp.name + self.fname = fname + self.include_hist = include_hist + [(fname, abs_fname)] + previously_included.append(abs_fname) + self.incl_info = incl_info self.src = fp.read() if self.src == '' or self.src[-1] != '\n': self.src += '\n' @@ -123,7 +123,8 @@ class QAPISchema: self.accept() while self.tok != None: - expr_info = {'file': input_relname, 'line': self.line, 'parent': self.parent_info} + expr_info = {'file': fname, 'line': self.line, + 'parent': self.incl_info} expr = self.get_expr(False) if isinstance(expr, dict) and "include" in expr: if len(expr) != 1: @@ -133,17 +134,17 @@ class QAPISchema: raise QAPIExprError(expr_info, 'Expected a file name (string), got: %s' % include) - include_path = os.path.join(os.path.dirname(input_fname), - include) + incl_abs_fname = os.path.join(os.path.dirname(abs_fname), + include) for elem in self.include_hist: - if include_path == elem[1]: + if incl_abs_fname == elem[1]: raise QAPIExprError(expr_info, "Inclusion loop for %s" % include) # skip multiple include of the same file - if include_path in previously_included: + if incl_abs_fname in previously_included: continue try: - fobj = open(include_path, 'r') + fobj = open(incl_abs_fname, 'r') except IOError, e: raise QAPIExprError(expr_info, '%s: %s' % (e.strerror, include)) @@ -651,13 +652,13 @@ def check_keys(expr_elem, meta, required, optional=[]): % (key, meta, name)) -def parse_schema(input_file): +def parse_schema(fname): global all_names exprs = [] # First pass: read entire file into memory try: - schema = QAPISchema(open(input_file, "r")) + schema = QAPISchema(open(fname, "r")) except (QAPISchemaError, QAPIExprError), e: print >>sys.stderr, e exit(1) @@ -1018,9 +1019,9 @@ def parse_command_line(extra_options = "", extra_long_options = []): if len(args) != 1: print >>sys.stderr, "%s: need exactly one argument" % sys.argv[0] sys.exit(1) - input_file = args[0] + fname = args[0] - return (input_file, output_dir, do_c, do_h, prefix, extra_opts) + return (fname, output_dir, do_c, do_h, prefix, extra_opts) def open_output(output_dir, do_c, do_h, prefix, c_file, h_file, c_comment, h_comment):