diff options
author | John Snow <jsnow@redhat.com> | 2021-04-21 15:22:26 -0400 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2021-04-30 12:59:54 +0200 |
commit | 46f49468c690ff015a5b5346a279845f5e55369e (patch) | |
tree | 6f43a7ef3448b81544108649d26fbbf77c34afb7 /scripts/qapi/schema.py | |
parent | e81718c698a9f1a1d98edd605f508dadbffe0d4d (diff) | |
download | qemu-46f49468c690ff015a5b5346a279845f5e55369e.zip qemu-46f49468c690ff015a5b5346a279845f5e55369e.tar.gz qemu-46f49468c690ff015a5b5346a279845f5e55369e.tar.bz2 |
qapi/error: Repurpose QAPIError as an abstract base exception class
Rename QAPIError to QAPISourceError, and then create a new QAPIError
class that serves as the basis for all of our other custom exceptions,
without specifying any class properties.
This leaves QAPIError as a package-wide error class that's suitable for
any current or future errors.
(Right now, we don't have any errors that DON'T also want to specify a
Source location, but this MAY change. In these cases, a common abstract
ancestor would be desired.)
Add docstrings to explain the intended function of each error class.
Signed-off-by: John Snow <jsnow@redhat.com>
Message-Id: <20210421192233.3542904-2-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'scripts/qapi/schema.py')
-rw-r--r-- | scripts/qapi/schema.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index 703b446..c277fca 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -20,7 +20,7 @@ import re from typing import Optional from .common import POINTER_SUFFIX, c_name -from .error import QAPIError, QAPISemError +from .error import QAPISemError, QAPISourceError from .expr import check_exprs from .parser import QAPISchemaParser @@ -875,7 +875,8 @@ class QAPISchema: other_ent = self._entity_dict.get(ent.name) if other_ent: if other_ent.info: - where = QAPIError(other_ent.info, None, "previous definition") + where = QAPISourceError(other_ent.info, None, + "previous definition") raise QAPISemError( ent.info, "'%s' is already defined\n%s" % (ent.name, where)) |