forked from lix-project/lix
prevent double quotation
This commit is contained in:
parent
b72bc4a972
commit
82296f8113
|
@ -121,13 +121,7 @@ void Value::print(const SymbolTable & symbols, std::ostream & str,
|
||||||
else {
|
else {
|
||||||
str << "{ ";
|
str << "{ ";
|
||||||
for (auto & i : attrs->lexicographicOrder(symbols)) {
|
for (auto & i : attrs->lexicographicOrder(symbols)) {
|
||||||
// Quote reserved keywords so that the output can be
|
str << symbols[i->name] << " = ";
|
||||||
// re-evaluated later without upsetting the lexer.
|
|
||||||
if (isReservedKeyword(symbols[i->name])) {
|
|
||||||
str << "\"" << symbols[i->name] << "\" = ";
|
|
||||||
} else {
|
|
||||||
str << symbols[i->name] << " = ";
|
|
||||||
}
|
|
||||||
i->value->print(symbols, str, seen);
|
i->value->print(symbols, str, seen);
|
||||||
str << "; ";
|
str << "; ";
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,7 @@ nix eval --expr 'assert 1 + 2 == 3; true'
|
||||||
[[ $(nix eval attr -f "./eval.nix") == '{ foo = "bar"; }' ]]
|
[[ $(nix eval attr -f "./eval.nix") == '{ foo = "bar"; }' ]]
|
||||||
[[ $(nix eval attr --json -f "./eval.nix") == '{"foo":"bar"}' ]]
|
[[ $(nix eval attr --json -f "./eval.nix") == '{"foo":"bar"}' ]]
|
||||||
[[ $(nix eval int -f - < "./eval.nix") == 123 ]]
|
[[ $(nix eval int -f - < "./eval.nix") == 123 ]]
|
||||||
[[ $(nix eval --expr '{"assert"=1;bar=2;}') == '{ "assert" = 1; bar = 2; }' ]]
|
[[ "$(nix eval --expr '{"assert"=1;bar=2;}')" == '{ "assert" = 1; bar = 2; }' ]]
|
||||||
|
|
||||||
# Check if toFile can be utilized during restricted eval
|
# Check if toFile can be utilized during restricted eval
|
||||||
[[ $(nix eval --restrict-eval --expr 'import (builtins.toFile "source" "42")') == 42 ]]
|
[[ $(nix eval --restrict-eval --expr 'import (builtins.toFile "source" "42")') == 42 ]]
|
||||||
|
@ -30,7 +30,7 @@ nix-instantiate --eval -E 'assert 1 + 2 == 3; true'
|
||||||
[[ $(nix-instantiate -A attr --eval "./eval.nix") == '{ foo = "bar"; }' ]]
|
[[ $(nix-instantiate -A attr --eval "./eval.nix") == '{ foo = "bar"; }' ]]
|
||||||
[[ $(nix-instantiate -A attr --eval --json "./eval.nix") == '{"foo":"bar"}' ]]
|
[[ $(nix-instantiate -A attr --eval --json "./eval.nix") == '{"foo":"bar"}' ]]
|
||||||
[[ $(nix-instantiate -A int --eval - < "./eval.nix") == 123 ]]
|
[[ $(nix-instantiate -A int --eval - < "./eval.nix") == 123 ]]
|
||||||
[[ $(nix-instantiate --eval -E '{"assert"=1;bar=2;}') == '{ "assert" = 1; bar = 2; }' ]]
|
[[ "$(nix-instantiate --eval -E '{"assert"=1;bar=2;}')" == '{ "assert" = 1; bar = 2; }' ]]
|
||||||
|
|
||||||
# Check that symlink cycles don't cause a hang.
|
# Check that symlink cycles don't cause a hang.
|
||||||
ln -sfn cycle.nix $TEST_ROOT/cycle.nix
|
ln -sfn cycle.nix $TEST_ROOT/cycle.nix
|
||||||
|
|
Loading…
Reference in a new issue