667b250846
* guix/gexp.scm (<gexp>)[natives]: New field. (write-gexp): Use both 'gexp-references' and 'gexp-native-references'. (gexp->derivation): Use both 'gexp-inputs' and 'gexp-native-inputs', and append them. (gexp-inputs): Add 'references' parameter and honor it. (gexp-native-inputs): New procedure. (gexp->sexp)[reference->sexp]: Add 'native?' parameter and honor it. Use it, and use 'gexp-native-references'. (gexp)[collect-native-escapes]: New procedure. [escape->ref]: Handle 'ungexp-native' and 'ungexp-native-splicing'. [substitute-ungexp, substitute-ungexp-splicing]: New procedures. [substitute-references]: Use them, and handle 'ungexp-native' and 'ungexp-native-splicing'. Adjust generated 'make-gexp' call to provide both normal references and native references. [read-ungexp]: Support 'ungexp-native' and 'ungexp-native-splicing'. Add reader extension for #+. * tests/gexp.scm (gexp-native-inputs): New procedure. (gexp->sexp*): Add 'target' parameter. ("ungexp + ungexp-native", "input list + ungexp-native", "input list splicing + ungexp-native-splicing", "gexp->derivation, ungexp-native", "gexp->derivation, ungexp + ungexp-native"): New tests. ("sugar"): Add tests for #+ and #+@. * doc/guix.texi (G-Expressions): Document 'ungexp-native' et al. |
||
---|---|---|
.. | ||
base32.scm | ||
base64.scm | ||
build-utils.scm | ||
builders.scm | ||
derivations.scm | ||
gexp.scm | ||
guix-archive.sh | ||
guix-authenticate.sh | ||
guix-build.sh | ||
guix-daemon.sh | ||
guix-download.sh | ||
guix-gc.sh | ||
guix-hash.sh | ||
guix-package.sh | ||
guix-register.sh | ||
guix-system.sh | ||
hash.scm | ||
monads.scm | ||
nar.scm | ||
packages.scm | ||
pk-crypto.scm | ||
pki.scm | ||
profiles.scm | ||
records.scm | ||
signing-key.pub | ||
signing-key.sec | ||
snix.scm | ||
store.scm | ||
substitute-binary.scm | ||
syscalls.scm | ||
test.drv | ||
ui.scm | ||
union.scm | ||
utils.scm |