qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 04/16] qapi/expr.py: Add assertion for union type 'check_d


From: Markus Armbruster
Subject: Re: [PATCH v3 04/16] qapi/expr.py: Add assertion for union type 'check_dict'
Date: Wed, 24 Feb 2021 11:35:55 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

John Snow <jsnow@redhat.com> writes:

> 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>
> ---
>  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 783282b53ce..138fab0711f 100644
> --- a/scripts/qapi/expr.py
> +++ b/scripts/qapi/expr.py
> @@ -173,7 +173,9 @@ def check_type(value, info, source,
>          raise QAPISemError(info,
>                             "%s should be an object or type name" % source)
>  
> -    permit_upper = allow_dict in info.pragma.name_case_whitelist
> +    permit_upper = False
> +    if isinstance(allow_dict, str):
> +        permit_upper = allow_dict in info.pragma.name_case_whitelist
>  
>      # value is a dictionary, check that each member is okay
>      for (key, arg) in value.items():

Busy-work like this can make me doubt typing is worth the notational
overhead.

There must a less awkward way to plumb "upper case okay" through
check_type() to check_name_is_str().  But we're typing what we have.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]