diff options
author | Dylan Baker <dylan@pnwbakers.com> | 2021-08-27 11:47:12 -0700 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2021-08-27 14:54:29 -0700 |
commit | 11fbaf29d8444ca35269a938e46327dfbe7820bd (patch) | |
tree | 135656b3fb49b4d185655f43fe1de62580788fee /mesonbuild/interpreter/mesonmain.py | |
parent | 3f5d80b8bbd40d166657c1c7f856fe7777623df1 (diff) | |
download | meson-11fbaf29d8444ca35269a938e46327dfbe7820bd.zip meson-11fbaf29d8444ca35269a938e46327dfbe7820bd.tar.gz meson-11fbaf29d8444ca35269a938e46327dfbe7820bd.tar.bz2 |
interpreter: fix cases of `KwargInfo(..., T, default=None)`
The correct way to mark these is `KwargInfo(..., (T, type(None)))`.
There's also a few cases of `(T, None)` which is invalid, as `None`
isn't a type
Diffstat (limited to 'mesonbuild/interpreter/mesonmain.py')
-rw-r--r-- | mesonbuild/interpreter/mesonmain.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/mesonbuild/interpreter/mesonmain.py b/mesonbuild/interpreter/mesonmain.py index 1c850b2..a1ba445 100644 --- a/mesonbuild/interpreter/mesonmain.py +++ b/mesonbuild/interpreter/mesonmain.py @@ -14,7 +14,7 @@ from ..interpreterbase import (MesonInterpreterObject, FeatureNew, FeatureDeprec from .interpreterobjects import (ExecutableHolder, ExternalProgramHolder, CustomTargetHolder, CustomTargetIndexHolder, EnvironmentVariablesObject) -from .type_checking import NATIVE_KW +from .type_checking import NATIVE_KW, NoneType import typing as T @@ -112,9 +112,11 @@ class MesonMain(MesonInterpreterObject): '0.55.0', self.interpreter.subproject) return script_args - @typed_kwargs('add_install_script', - KwargInfo('skip_if_destdir', bool, default=False, since='0.57.0'), - KwargInfo('install_tag', str, since='0.60.0')) + @typed_kwargs( + 'add_install_script', + KwargInfo('skip_if_destdir', bool, default=False, since='0.57.0'), + KwargInfo('install_tag', (str, NoneType), since='0.60.0'), + ) def add_install_script_method(self, args: 'T.Tuple[T.Union[str, mesonlib.File, ExecutableHolder], T.Union[str, mesonlib.File, CustomTargetHolder, CustomTargetIndexHolder], ...]', kwargs): if len(args) < 1: raise InterpreterException('add_install_script takes one or more arguments') @@ -299,8 +301,11 @@ class MesonMain(MesonInterpreterObject): raise InterpreterException('Second argument must be an external program or executable.') self.interpreter.add_find_program_override(name, exe) - @typed_kwargs('meson.override_dependency', NATIVE_KW, - KwargInfo('static', bool, since='0.60.0')) + @typed_kwargs( + 'meson.override_dependency', + NATIVE_KW, + KwargInfo('static', (bool, NoneType), since='0.60.0'), + ) @typed_pos_args('meson.override_dependency', str, dependencies.Dependency) @FeatureNew('meson.override_dependency', '0.54.0') def override_dependency_method(self, args: T.Tuple[str, dependencies.Dependency], kwargs: 'FuncOverrideDependency') -> None: |