From c14aea2812fd2be94998bdb174e9a4681aeea394 Mon Sep 17 00:00:00 2001 From: Daniel Mensinger Date: Sat, 7 Dec 2019 14:42:23 +0100 Subject: types: Annotate mparser.py This also fixes that the keys in ArgumentNode.kwargs are all of the type BaseNode now. Before this commit, it was possible that both strings and Nodes where used as keys. --- mesonbuild/cmake/interpreter.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'mesonbuild/cmake') diff --git a/mesonbuild/cmake/interpreter.py b/mesonbuild/cmake/interpreter.py index 941baed..fdcd287 100644 --- a/mesonbuild/cmake/interpreter.py +++ b/mesonbuild/cmake/interpreter.py @@ -1002,7 +1002,7 @@ class CMakeInterpreter: if not isinstance(args, list): args = [args] args_n.arguments = [nodeify(x) for x in args if x is not None] - args_n.kwargs = {k: nodeify(v) for k, v in kwargs.items() if v is not None} + args_n.kwargs = {id_node(k): nodeify(v) for k, v in kwargs.items() if v is not None} func_n = FunctionNode(self.subdir, 0, 0, 0, 0, name, args_n) return func_n @@ -1013,7 +1013,7 @@ class CMakeInterpreter: if not isinstance(args, list): args = [args] args_n.arguments = [nodeify(x) for x in args if x is not None] - args_n.kwargs = {k: nodeify(v) for k, v in kwargs.items() if v is not None} + args_n.kwargs = {id_node(k): nodeify(v) for k, v in kwargs.items() if v is not None} return MethodNode(self.subdir, 0, 0, obj, name, args_n) def assign(var_name: str, value: BaseNode) -> AssignmentNode: -- cgit v1.1 From ab988198c7aa5bec33057fabf2b5f68e847d67d2 Mon Sep 17 00:00:00 2001 From: Daniel Mensinger Date: Mon, 9 Dec 2019 23:17:25 +0100 Subject: review: Initial fixup --- mesonbuild/cmake/interpreter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mesonbuild/cmake') diff --git a/mesonbuild/cmake/interpreter.py b/mesonbuild/cmake/interpreter.py index fdcd287..efdb840 100644 --- a/mesonbuild/cmake/interpreter.py +++ b/mesonbuild/cmake/interpreter.py @@ -978,7 +978,7 @@ class CMakeInterpreter: if isinstance(value, str): return string(value) elif isinstance(value, bool): - return BooleanNode(token(), value) + return BooleanNode(token(val=value)) elif isinstance(value, int): return number(value) elif isinstance(value, list): -- cgit v1.1