Files
smnp-py/smnp/runtime/evaluators/map.py
2019-07-09 00:14:37 +02:00

11 lines
404 B
Python

from smnp.runtime.evaluator import Evaluator, evaluate
from smnp.type.model import Type
class MapEvaluator(Evaluator):
@classmethod
def evaluator(cls, node, environment):
keys = [ evaluate(entry.key, environment).value for entry in node.children ]
values = [ evaluate(entry.value, environment).value for entry in node.children ]
return Type.map(dict(zip(keys, values)))