diff options
author | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-06-17 00:07:04 +0200 |
---|---|---|
committer | Daniel Mensinger <daniel@mensinger-ka.de> | 2021-06-18 23:48:33 +0200 |
commit | c2c7f7c9d7b05dddb1cee028b1b685c7f2bd424c (patch) | |
tree | 7392e6220ddede2781662bcf0851080b4f0aa1ff /mesonbuild/interpreter/interpreterobjects.py | |
parent | 6879e84c48632bcd0f6c277e81b4032a00bb1d5c (diff) | |
download | meson-c2c7f7c9d7b05dddb1cee028b1b685c7f2bd424c.zip meson-c2c7f7c9d7b05dddb1cee028b1b685c7f2bd424c.tar.gz meson-c2c7f7c9d7b05dddb1cee028b1b685c7f2bd424c.tar.bz2 |
holders: Ensure that InterpreterBase is the sole instance for (un)holderifying
Diffstat (limited to 'mesonbuild/interpreter/interpreterobjects.py')
-rw-r--r-- | mesonbuild/interpreter/interpreterobjects.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/mesonbuild/interpreter/interpreterobjects.py b/mesonbuild/interpreter/interpreterobjects.py index ac37f3a..8b62496 100644 --- a/mesonbuild/interpreter/interpreterobjects.py +++ b/mesonbuild/interpreter/interpreterobjects.py @@ -13,15 +13,13 @@ from .. import mlog from ..modules import ModuleReturnValue, ModuleObject, ModuleState, ExtensionModule from ..backend.backends import TestProtocol -from ..interpreterbase import (ContainerTypeInfo, KwargInfo, - MesonInterpreterObject, ObjectHolder, MutableInterpreterObject, - FeatureNewKwargs, FeatureNew, FeatureDeprecated, - typed_kwargs, typed_pos_args, stringArgs, - permittedKwargs, noArgsFlattening, noPosargs, - TYPE_var, TYPE_nkwargs, flatten, - InterpreterException, InvalidArguments, - InvalidCode) -from ..interpreterbase.decorators import FeatureCheckBase +from ..interpreterbase import ( + ContainerTypeInfo, KwargInfo, + InterpreterObject, MesonInterpreterObject, ObjectHolder, MutableInterpreterObject, + FeatureCheckBase, FeatureNewKwargs, FeatureNew, FeatureDeprecated, + typed_pos_args, typed_kwargs, KwargInfo, stringArgs, permittedKwargs, + noArgsFlattening, noPosargs, noKwargs, unholder_return, TYPE_var, TYPE_kwargs, TYPE_nvar, TYPE_nkwargs, + flatten, InterpreterException, InvalidArguments, InvalidCode) from ..dependencies import Dependency, ExternalLibrary, InternalDependency from ..programs import ExternalProgram from ..mesonlib import HoldableObject, MesonException, OptionKey, listify, Popen_safe @@ -751,7 +749,8 @@ class SubprojectHolder(ObjectHolder[T.Optional['Interpreter']]): @permittedKwargs({}) @noArgsFlattening - def get_variable_method(self, args, kwargs): + @unholder_return + def get_variable_method(self, args: T.List[TYPE_var], kwargs: TYPE_kwargs) -> T.Union[TYPE_var, InterpreterObject]: if len(args) < 1 or len(args) > 2: raise InterpreterException('Get_variable takes one or two arguments.') if not self.found(): |