[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 04/25] qapi/schema.py: constrain QAPISchemaObjectType base type
From: |
John Snow |
Subject: |
[PATCH 04/25] qapi/schema.py: constrain QAPISchemaObjectType base type |
Date: |
Tue, 22 Sep 2020 18:44:40 -0400 |
Re-order check slightly so we can provide a stronger guarantee on the
typing of the base field.
Signed-off-by: John Snow <jsnow@redhat.com>
---
scripts/qapi/schema.py | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
index a53631e660..3aa842be08 100644
--- a/scripts/qapi/schema.py
+++ b/scripts/qapi/schema.py
@@ -378,14 +378,14 @@ def check(self, schema):
seen = OrderedDict()
if self._base_name:
- self.base = schema.resolve_type(self._base_name, self.info,
- "'base'")
- if (not isinstance(self.base, QAPISchemaObjectType)
- or self.base.variants):
+ base = schema.resolve_type(self._base_name, self.info, "'base'")
+ if (not isinstance(base, QAPISchemaObjectType)
+ or base.variants):
raise QAPISemError(
self.info,
"'base' requires a struct type, %s isn't"
- % self.base.describe())
+ % base.describe())
+ self.base = base
self.base.check(schema)
self.base.check_clash(self.info, seen)
for m in self.local_members:
--
2.26.2
- [PATCH 00/25] qapi: static typing conversion, pt6, John Snow, 2020/09/22
- [PATCH 01/25] qapi/schema: add Visitable mixin, John Snow, 2020/09/22
- [PATCH 03/25] qapi/schema.py: add assert in stub methods, John Snow, 2020/09/22
- [PATCH 02/25] qapi/schema.py: Move meta-type into class instances, John Snow, 2020/09/22
- [PATCH 04/25] qapi/schema.py: constrain QAPISchemaObjectType base type,
John Snow <=
- [PATCH 06/25] qapi/schema.py: constrain QAPISchemaEvent arg_type type, John Snow, 2020/09/22
- [PATCH 05/25] qapi/schema.py: constrain QAPISchemaObjectTypeMember arg_type type, John Snow, 2020/09/22
- [PATCH 09/25] qapi/schema.py: remove superfluous assert, John Snow, 2020/09/22
- [PATCH 07/25] qapi/schema.py: constrain tag_member type, John Snow, 2020/09/22
- [PATCH 14/25] qapi/schema.py: Assert variants of an object are also objects, John Snow, 2020/09/22
- [PATCH 10/25] qapi/schema.py: Add assertion to ifcond property, John Snow, 2020/09/22
- [PATCH 21/25] qapi/schema.py: disable pylint line limit, John Snow, 2020/09/22
- [PATCH 12/25] qapi/schema.py: remove 'and' from non-bool rvalue expressions, John Snow, 2020/09/22
- [PATCH 11/25] qapi/schema.py: Constrain type of QAPISchemaObjectType members field, John Snow, 2020/09/22
- [PATCH 08/25] qapi/schema.py: Allow alternate_type to assert, John Snow, 2020/09/22