1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-04 03:01:47 +02:00

* Started integrating the new evaluator.

This commit is contained in:
Eelco Dolstra 2010-03-29 14:37:56 +00:00
parent 52090d2418
commit 31428c3a06
8 changed files with 745 additions and 709 deletions

View file

@ -37,6 +37,7 @@ static int rootNr = 0;
static bool indirectRoot = false;
#if 0
static void printResult(EvalState & state, Expr e,
bool evalOnly, bool xmlOutput, const ATermMap & autoArgs)
{
@ -63,21 +64,28 @@ static void printResult(EvalState & state, Expr e,
}
}
}
#endif
void processExpr(EvalState & state, const Strings & attrPaths,
bool parseOnly, bool strict, const ATermMap & autoArgs,
bool evalOnly, bool xmlOutput, Expr e)
{
Value v;
state.strictEval(e, v);
std::cout << v << std::endl;
#if 0
for (Strings::const_iterator i = attrPaths.begin(); i != attrPaths.end(); ++i) {
Expr e2 = findAlongAttrPath(state, *i, autoArgs, e);
if (!parseOnly)
if (strict)
e2 = strictEvalExpr(state, e2);
e2 = state.strictEval(e2);
else
e2 = evalExpr(state, e2);
printResult(state, e2, evalOnly, xmlOutput, autoArgs);
}
#endif
}