diff options
author | John Snow <jsnow@redhat.com> | 2021-04-21 15:22:28 -0400 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2021-04-30 12:59:54 +0200 |
commit | 86cc2ff65a4764ade26c7741c7c05f23e7efa95c (patch) | |
tree | 94eae20e0ac3a1b5e7d30b75f1d60af827b313eb /scripts/qapi | |
parent | b54e07cc46064e79de275c7ea26d90a51913a9ea (diff) | |
download | qemu-86cc2ff65a4764ade26c7741c7c05f23e7efa95c.zip qemu-86cc2ff65a4764ade26c7741c7c05f23e7efa95c.tar.gz qemu-86cc2ff65a4764ade26c7741c7c05f23e7efa95c.tar.bz2 |
qapi/error: Make QAPISourceError 'col' parameter optional
It's already treated as optional, with one direct caller and some
subclass callers passing 'None'. Make it officially optional, which
requires moving the position of the argument to come after all required
parameters.
QAPISemError becomes functionally identical to QAPISourceError. Keep the
name to preserve its semantic meaning and avoid code churn, but remove
the now-useless __init__ wrapper.
Signed-off-by: John Snow <jsnow@redhat.com>
Message-Id: <20210421192233.3542904-4-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'scripts/qapi')
-rw-r--r-- | scripts/qapi/error.py | 8 | ||||
-rw-r--r-- | scripts/qapi/schema.py | 3 |
2 files changed, 4 insertions, 7 deletions
diff --git a/scripts/qapi/error.py b/scripts/qapi/error.py index 38bd7c4..d179a3b 100644 --- a/scripts/qapi/error.py +++ b/scripts/qapi/error.py @@ -18,11 +18,11 @@ class QAPIError(Exception): class QAPISourceError(QAPIError): """Error class for all exceptions identifying a source location.""" - def __init__(self, info, col, msg): + def __init__(self, info, msg, col=None): super().__init__() self.info = info - self.col = col self.msg = msg + self.col = col def __str__(self): loc = str(self.info) @@ -41,10 +41,8 @@ class QAPIParseError(QAPISourceError): col = (col + 7) % 8 + 1 else: col += 1 - super().__init__(parser.info, col, msg) + super().__init__(parser.info, msg, col) class QAPISemError(QAPISourceError): """Error class for semantic QAPI errors.""" - def __init__(self, info, msg): - super().__init__(info, None, msg) diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index c277fca..3a4172f 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -875,8 +875,7 @@ class QAPISchema: other_ent = self._entity_dict.get(ent.name) if other_ent: if other_ent.info: - where = QAPISourceError(other_ent.info, None, - "previous definition") + where = QAPISourceError(other_ent.info, "previous definition") raise QAPISemError( ent.info, "'%s' is already defined\n%s" % (ent.name, where)) |