aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter/mesonmain.py
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2021-08-27 11:47:12 -0700
committerDylan Baker <dylan@pnwbakers.com>2021-08-27 14:54:29 -0700
commit11fbaf29d8444ca35269a938e46327dfbe7820bd (patch)
tree135656b3fb49b4d185655f43fe1de62580788fee /mesonbuild/interpreter/mesonmain.py
parent3f5d80b8bbd40d166657c1c7f856fe7777623df1 (diff)
downloadmeson-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.py17
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: