mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
DRAFT serialization: Avoid 'define-values', for the sake of Guile 2.0.
DRAFT: We should probably just use 'let-values' instead. * guix/serialization.scm (define-values) [not guile-2.2]: New macro.
This commit is contained in:
@@ -287,6 +287,21 @@ order."
|
||||
string<?)
|
||||
string=?))
|
||||
|
||||
(cond-expand
|
||||
((not guile-2.2)
|
||||
;; Guile 2.0 lacks 'define-values'.
|
||||
(define-syntax define-values
|
||||
(syntax-rules ()
|
||||
((_ (a b) exp)
|
||||
(begin
|
||||
(define a #f)
|
||||
(define b #f)
|
||||
(call-with-values (lambda () exp)
|
||||
(lambda (x y)
|
||||
(set! a x)
|
||||
(set! b y))))))))
|
||||
(else #t))
|
||||
|
||||
(define* (write-file-tree file port
|
||||
#:key
|
||||
file-type+size
|
||||
|
||||
Reference in New Issue
Block a user