Avoid lumping together output values as (output '(x y z)), use
separate output expressions instead. svn: r14015
This commit is contained in:
parent
fe618071dc
commit
8b5b6a53d9
|
@ -78,14 +78,16 @@
|
||||||
(define post? (not (null? (syntax-e #'(post ...)))))
|
(define post? (not (null? (syntax-e #'(post ...)))))
|
||||||
(define (wrap expr)
|
(define (wrap expr)
|
||||||
(if (or pre? post?)
|
(if (or pre? post?)
|
||||||
#`(begin #,@(if pre? #'((decor '(pre ...))) #'())
|
#`(begin #,@(if pre? #'((decor 'pre) ...) #'())
|
||||||
#,expr
|
#,expr
|
||||||
#,@(if post? #'((decor '(post ...))) #'()))
|
#,@(if post? #'((decor 'post) ...) #'()))
|
||||||
expr))
|
expr))
|
||||||
(cond [(begin?->list expr*)
|
(cond [(begin?->list expr*)
|
||||||
=> (lambda (xs)
|
=> (lambda (xs)
|
||||||
(if (null? xs)
|
(if (null? xs)
|
||||||
(if (or pre? post?) #'(decor '(pre ... post ...)) expr*)
|
(if (or pre? post?)
|
||||||
|
#'(begin (decor 'pre) ... (decor 'post) ...)
|
||||||
|
expr*)
|
||||||
#`(process-begin/text begin decor
|
#`(process-begin/text begin decor
|
||||||
pre ... #,@xs post ...)))]
|
pre ... #,@xs post ...)))]
|
||||||
[(definition? expr*) expr*] ; dump pre/post
|
[(definition? expr*) expr*] ; dump pre/post
|
||||||
|
|
Loading…
Reference in New Issue
Block a user