diff options
Diffstat (limited to 'mesonbuild/ast')
-rw-r--r-- | mesonbuild/ast/interpreter.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mesonbuild/ast/interpreter.py b/mesonbuild/ast/interpreter.py index 6a826ef..fb77db0 100644 --- a/mesonbuild/ast/interpreter.py +++ b/mesonbuild/ast/interpreter.py @@ -192,6 +192,16 @@ class AstInterpreter(interpreterbase.InterpreterBase): self.evaluate_statement(node.trueblock) self.evaluate_statement(node.falseblock) + def evaluate_dictstatement(self, node: mparser.DictNode) -> TYPE_nkwargs: + (arguments, kwargs) = self.reduce_arguments(node.args, resolve_key_nodes=False) + assert (not arguments) + self.argument_depth += 1 + for key, value in kwargs.items(): + if isinstance(key, BaseNode): + self.evaluate_statement(key) + self.argument_depth -= 1 + return {} + def evaluate_plusassign(self, node: PlusAssignmentNode) -> None: assert(isinstance(node, PlusAssignmentNode)) # Cheat by doing a reassignment |