[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 14/23] qapi/schema: assert info is present when necessary
From: |
John Snow |
Subject: |
[PATCH v4 14/23] qapi/schema: assert info is present when necessary |
Date: |
Wed, 13 Mar 2024 00:41:18 -0400 |
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>
---
scripts/qapi/schema.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
index 22e065fc13d..d514b3c28f6 100644
--- a/scripts/qapi/schema.py
+++ b/scripts/qapi/schema.py
@@ -750,6 +750,7 @@ def describe(self, info):
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)
@@ -840,6 +841,7 @@ def __init__(self, name, info, doc, ifcond, features,
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(
--
2.44.0
- [PATCH v4 03/23] qapi: sort pylint suppressions, (continued)
- [PATCH v4 03/23] qapi: sort pylint suppressions, John Snow, 2024/03/13
- [PATCH v4 01/23] qapi/parser: fix typo - self.returns.info => self.errors.info, John Snow, 2024/03/13
- [PATCH v4 09/23] qapi/schema: adjust type narrowing for mypy's benefit, John Snow, 2024/03/13
- [PATCH v4 04/23] qapi/schema: add pylint suppressions, John Snow, 2024/03/13
- [PATCH v4 13/23] qapi/schema: fix QAPISchemaArrayType.check's call to resolve_type, John Snow, 2024/03/13
- [PATCH v4 02/23] qapi/parser: shush up pylint, John Snow, 2024/03/13
- [PATCH v4 12/23] qapi: use schema.resolve_type instead of schema.lookup_type, John Snow, 2024/03/13
- [PATCH v4 18/23] qapi/schema: assert inner type of QAPISchemaVariants in check_clash(), John Snow, 2024/03/13
- [PATCH v4 14/23] qapi/schema: assert info is present when necessary,
John Snow <=
- [PATCH v4 07/23] qapi/schema: declare type for QAPISchemaArrayType.element_type, John Snow, 2024/03/13
- [PATCH v4 05/23] qapi: create QAPISchemaDefinition, John Snow, 2024/03/13
[PATCH v4 17/23] qapi/schema: fix typing for QAPISchemaVariants.tag_member, John Snow, 2024/03/13
[PATCH v4 16/23] qapi/schema: Don't initialize "members" with `None`, John Snow, 2024/03/13