1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-25 10:41:16 +02:00

* Strict evaluation and XML printing of lists.

This commit is contained in:
Eelco Dolstra 2006-08-24 14:03:39 +00:00
parent 943ab38a0d
commit da25d80152
2 changed files with 16 additions and 4 deletions

View file

@ -589,7 +589,6 @@ Expr strictEvalExpr(EvalState & state, Expr e)
e = evalExpr(state, e);
ATermList as;
if (matchAttrs(e, as)) {
ATermList as2 = ATempty;
for (ATermIterator i(as); i; ++i) {
@ -599,10 +598,17 @@ Expr strictEvalExpr(EvalState & state, Expr e)
}
return makeAttrs(ATreverse(as2));
}
ATermList es;
if (matchList(e, es)) {
ATermList es2 = ATempty;
for (ATermIterator i(es); i; ++i)
es2 = ATinsert(es2, strictEvalExpr(state, *i));
return makeList(ATreverse(es2));
}
ATermList formals;
ATerm body, pos;
if (matchFunction(e, formals, body, pos)) {
ATermList formals2 = ATempty;