[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 05/25] qapi/expr.py: Add assertion for union type 'check_dict'
From: |
Markus Armbruster |
Subject: |
[PULL 05/25] qapi/expr.py: Add assertion for union type 'check_dict' |
Date: |
Fri, 30 Apr 2021 13:48:18 +0200 |
From: John Snow <jsnow@redhat.com>
mypy isn't fond of allowing you to check for bool membership in a
collection of str elements. Guard this lookup for precisely when we were
given a name.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Cleber Rosa <crosa@redhat.com>
Message-Id: <20210421182032.3521476-6-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
scripts/qapi/expr.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/scripts/qapi/expr.py b/scripts/qapi/expr.py
index 06a0081001..3ab78a555d 100644
--- a/scripts/qapi/expr.py
+++ b/scripts/qapi/expr.py
@@ -194,7 +194,9 @@ def check_type(value, info, source,
raise QAPISemError(info,
"%s should be an object or type name" % source)
- permissive = allow_dict in info.pragma.member_name_exceptions
+ permissive = False
+ if isinstance(allow_dict, str):
+ permissive = allow_dict in info.pragma.member_name_exceptions
# value is a dictionary, check that each member is okay
for (key, arg) in value.items():
--
2.26.3
- [PULL 08/25] qapi/expr.py: Add casts in a few select cases, (continued)
- [PULL 08/25] qapi/expr.py: Add casts in a few select cases, Markus Armbruster, 2021/04/30
- [PULL 13/25] qapi/expr.py: enable pylint checks, Markus Armbruster, 2021/04/30
- [PULL 11/25] qapi/expr.py: Consolidate check_if_str calls in check_if, Markus Armbruster, 2021/04/30
- [PULL 06/25] qapi/expr.py: move string check upwards in check_type, Markus Armbruster, 2021/04/30
- [PULL 12/25] qapi/expr.py: Remove single-letter variable, Markus Armbruster, 2021/04/30
- [PULL 14/25] qapi/expr: Only explicitly prohibit 'Kind' nor 'List' for type names, Markus Armbruster, 2021/04/30
- [PULL 10/25] qapi/expr.py: add type hint annotations, Markus Armbruster, 2021/04/30
- [PULL 09/25] qapi/expr.py: Modify check_keys to accept any Collection, Markus Armbruster, 2021/04/30
- [PULL 01/25] qapi/expr: Comment cleanup, Markus Armbruster, 2021/04/30
- [PULL 16/25] qapi/expr.py: Use tuples instead of lists for static data, Markus Armbruster, 2021/04/30
- [PULL 05/25] qapi/expr.py: Add assertion for union type 'check_dict',
Markus Armbruster <=
- [PULL 25/25] qapi/error.py: enable mypy checks, Markus Armbruster, 2021/04/30
- [PULL 19/25] qapi/error: Use Python3-style super(), Markus Armbruster, 2021/04/30
- [PULL 23/25] qapi/error.py: enable pylint checks, Markus Armbruster, 2021/04/30
- [PULL 20/25] qapi/error: Make QAPISourceError 'col' parameter optional, Markus Armbruster, 2021/04/30
- [PULL 22/25] qapi/error.py: move QAPIParseError to parser.py, Markus Armbruster, 2021/04/30
- [PULL 24/25] qapi/error: Add type hints, Markus Armbruster, 2021/04/30
- [PULL 02/25] qapi/expr.py: Remove 'info' argument from nested check_if_str, Markus Armbruster, 2021/04/30
- [PULL 07/25] qapi/expr.py: Check type of union and alternate 'data' member, Markus Armbruster, 2021/04/30
- [PULL 15/25] qapi/expr.py: Add docstrings, Markus Armbruster, 2021/04/30
- [PULL 17/25] qapi/expr: Update authorship and copyright information, Markus Armbruster, 2021/04/30