import: utils: Add API to peek procedure bodies.

* guix/import/utils.scm (peekable-lambda, peek-body): Add procedures.
* .dir-locals.el: Add peekable-lambda indentation.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This commit is contained in:
Nicolas Graves 2025-09-16 15:32:07 +02:00 committed by Liliana Marie Prikler
parent 6d48eaa9a3
commit 68c4eab949
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87
2 changed files with 13 additions and 0 deletions

View file

@ -14,6 +14,7 @@
;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -66,6 +67,9 @@
url-fetch
guix-hash-url
peekable-lambda
peek-body
package-names->package-inputs
maybe-inputs
maybe-native-inputs
@ -165,6 +169,14 @@ thrown."
"Return the hash of FILENAME in nix-base32 format."
(bytevector->nix-base32-string (file-sha256 filename)))
(define-syntax-rule (peekable-lambda args this-body)
(lambda args
#((body . this-body))
this-body))
(define (peek-body proc)
(procedure-property proc 'body))
(define %spdx-license-identifiers
;; https://spdx.org/licenses/
;; The gfl1.0, nmap, repoze