--- a/crates/jsonnet-evaluator/src/evaluate.rs +++ b/crates/jsonnet-evaluator/src/evaluate.rs @@ -250,8 +250,6 @@ } pub fn evaluate(context: Context, eval_state: EvaluationState, expr: &LocExpr) -> Val { - println!("==="); - eval_state.print_stack_trace(); use Expr::*; eval_state.clone().push(expr.clone(), "expr".to_owned(), || { let LocExpr(expr, loc) = expr; @@ -330,6 +328,13 @@ .into_future(future_context); evaluate(context, eval_state.clone(), &returned.clone()) } + Arr(items) => { + let mut out = Vec::with_capacity(items.len()); + for item in items { + out.push(evaluate(context.clone(), eval_state.clone(), item)); + } + Val::Arr(out) + } Obj(body) => Val::Obj(evaluate_object(context, eval_state, body.clone())), Apply(value, ArgsDesc(args)) => { let value = evaluate(context.clone(), eval_state.clone(), value).unwrap_if_lazy();