diff options
author | Ludovic Courtès <ludo@gnu.org> | 2015-10-03 12:28:58 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2015-10-03 14:36:12 +0200 |
commit | 57aff6476e3d4c9a2df5ea98f2caaed1472972de (patch) | |
tree | 56ca8bf6141a40a75175202e7a8530ca67635630 | |
parent | 29aca449c73be15ab11d332d975d5499bb49c7ca (diff) | |
download | patches-57aff6476e3d4c9a2df5ea98f2caaed1472972de.tar patches-57aff6476e3d4c9a2df5ea98f2caaed1472972de.tar.gz |
utils: Add 'every*'.
* guix/build/gnu-build-system.scm (every*): Move to...
* guix/build/utils.scm (every*): ... here. New procedure.
-rw-r--r-- | guix/build/gnu-build-system.scm | 12 | ||||
-rw-r--r-- | guix/build/utils.scm | 14 |
2 files changed, 14 insertions, 12 deletions
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm index 0a774e1e84..75439c8330 100644 --- a/guix/build/gnu-build-system.scm +++ b/guix/build/gnu-build-system.scm @@ -409,18 +409,6 @@ makefiles." strip-directories))) outputs)))) -(define (every* pred lst) - "This is like 'every', but process all the elements of LST instead of -stopping as soon as PRED returns false. This is useful when PRED has side -effects, such as displaying warnings or error messages." - (let loop ((lst lst) - (result #t)) - (match lst - (() - result) - ((head . tail) - (loop tail (and (pred head) result)))))) - (define* (validate-runpath #:key (validate-runpath? #t) (elf-directories '("lib" "lib64" "libexec" diff --git a/guix/build/utils.scm b/guix/build/utils.scm index 971929621a..e3f9edc5b5 100644 --- a/guix/build/utils.scm +++ b/guix/build/utils.scm @@ -59,10 +59,12 @@ list->search-path-as-string which + every* alist-cons-before alist-cons-after alist-replace modify-phases + with-atomic-file-replacement substitute substitute* @@ -454,6 +456,18 @@ PROGRAM could not be found." ;;; phases. ;;; +(define (every* pred lst) + "This is like 'every', but process all the elements of LST instead of +stopping as soon as PRED returns false. This is useful when PRED has side +effects, such as displaying warnings or error messages." + (let loop ((lst lst) + (result #t)) + (match lst + (() + result) + ((head . tail) + (loop tail (and (pred head) result)))))) + (define* (alist-cons-before reference key value alist #:optional (key=? equal?)) "Insert the KEY/VALUE pair before the first occurrence of a pair whose key |