aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/ast/interpreter.py
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2021-09-01 23:18:28 +0200
committerDaniel Mensinger <daniel@mensinger-ka.de>2021-09-25 12:44:11 +0200
commitd93d01b6c5c98a77e057b914e8d66b01d2a10771 (patch)
treeca759dff3424ad09519fada202bbbbe4ad9eaf14 /mesonbuild/ast/interpreter.py
parent5fcb0e6525e2044e0f82bda488a51350e0f7f29f (diff)
downloadmeson-d93d01b6c5c98a77e057b914e8d66b01d2a10771.zip
meson-d93d01b6c5c98a77e057b914e8d66b01d2a10771.tar.gz
meson-d93d01b6c5c98a77e057b914e8d66b01d2a10771.tar.bz2
interpreter: Introduce StringHolder
Another commit in my quest to rid InterpreterBase from all higher level object processing logic. Additionally, there is a a logic change here, since `str.join` now uses varargs and can now accept more than one argument (and supports list flattening).
Diffstat (limited to 'mesonbuild/ast/interpreter.py')
-rw-r--r--mesonbuild/ast/interpreter.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/mesonbuild/ast/interpreter.py b/mesonbuild/ast/interpreter.py
index 4fd1378..5998e5b 100644
--- a/mesonbuild/ast/interpreter.py
+++ b/mesonbuild/ast/interpreter.py
@@ -364,7 +364,8 @@ class AstInterpreter(InterpreterBase):
mkwargs = {} # type: T.Dict[str, TYPE_nvar]
try:
if isinstance(src, str):
- result = self.string_method_call(src, node.name, margs, mkwargs)
+ from ..interpreter import Interpreter, StringHolder
+ result = StringHolder(src, T.cast(Interpreter, self)).method_call(node.name, margs, mkwargs)
elif isinstance(src, bool):
from ..interpreter import Interpreter, BooleanHolder
result = BooleanHolder(src, T.cast(Interpreter, self)).method_call(node.name, margs, mkwargs)