diff options
| author | John Snow <jsnow@redhat.com> | 2024-03-15 16:22:50 +0100 |
|---|---|---|
| committer | Markus Armbruster <armbru@redhat.com> | 2024-04-24 10:03:54 +0200 |
| commit | 8b9e7fd3b38d4e0fb9311752a5b44b71cd8fbbc1 (patch) | |
| tree | e08ba731fe27c010ca86d502b264b9934778eb33 /scripts/qapi/schema.py | |
| parent | 8c91329ff09cec94dac22b459cc9914a7f49c54a (diff) | |
| download | focaccia-qemu-8b9e7fd3b38d4e0fb9311752a5b44b71cd8fbbc1.tar.gz focaccia-qemu-8b9e7fd3b38d4e0fb9311752a5b44b71cd8fbbc1.zip | |
qapi/schema: assert info is present when necessary
QAPISchemaInfo arguments can often be None because built-in definitions don't have such information. The type hint can only be Optional[QAPISchemaInfo] then. But, mypy gets upset about all the places where we exploit that it can't actually be None there. Add assertions that will help mypy over the hump, to enable adding type hints in a forthcoming commit. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-ID: <20240315152301.3621858-15-armbru@redhat.com>
Diffstat (limited to 'scripts/qapi/schema.py')
| -rw-r--r-- | scripts/qapi/schema.py | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index 087c6e9366..173e27d9e2 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -751,6 +751,7 @@ class QAPISchemaMember: else: assert False + assert info is not None if defined_in != info.defn_name: return "%s '%s' of %s '%s'" % (role, self.name, meta, defined_in) return "%s '%s'" % (role, self.name) @@ -841,6 +842,7 @@ class QAPISchemaCommand(QAPISchemaDefinition): self.coroutine = coroutine def check(self, schema): + assert self.info is not None super().check(schema) if self._arg_type_name: arg_type = schema.resolve_type( |