forked from lix-project/lix
37d7abd694
The expression `with E1; E2' evaluates to E2 with all bindings in the attribute set E1 substituted. E.g., with {x = 123;}; x evaluates to 123. That is, the attribute set E1 is in scope in E2. This is particularly useful when importing files containing lots definitions. E.g., instead of let { inherit (import ./foo.nix) a b c d e f; body = ... a ... f ...; } we can now say with import ./foo.nix; ... a ... f ... I.e., we don't have to say what variables should be brought into scope. |
||
---|---|---|
.. | ||
eval.cc | ||
eval.hh | ||
lexer.l | ||
Makefile.am | ||
nixexpr.cc | ||
nixexpr.hh | ||
parser.cc | ||
parser.hh | ||
parser.y | ||
primops.cc |