package org.jtwig.render.expression.calculator; import org.jtwig.model.expression.Expression; import org.jtwig.model.expression.MapExpression; import org.jtwig.render.RenderRequest; import org.jtwig.render.expression.CalculateExpressionService; import java.util.LinkedHashMap; import java.util.Map; public class MapExpressionCalculator implements ExpressionCalculator<MapExpression> { @Override public Object calculate(RenderRequest request, MapExpression expression) { CalculateExpressionService calculateExpressionService = request.getEnvironment().getRenderEnvironment().getCalculateExpressionService(); Map<String, Object> result = new LinkedHashMap<>(); for (Map.Entry<String, Expression> entry : expression.getExpressions().entrySet()) { result.put(entry.getKey(), calculateExpressionService.calculate(request, entry.getValue())); } return result; } }