class SelectExpression implements PipeExpression {

    @Override
    public boolean process(ExpressionContext context, QueryResult result, Pipeline next) {
        Map<String, ExpressionResult> values = new HashMap<>();
        for (Expression valueExpression : expressions) {
            values.put(valueExpression.alias(), valueExpression.apply(context, result.getValue()));
        }
        return next.process(result.withValue(new MapExpressionResult(values)));
    }

    public  SelectExpression(Expression[] expressions);

}