summaryrefslogtreecommitdiff
path: root/scheme/guile
diff options
context:
space:
mode:
Diffstat (limited to 'scheme/guile')
-rw-r--r--scheme/guile/geiser/doc.scm15
1 files changed, 7 insertions, 8 deletions
diff --git a/scheme/guile/geiser/doc.scm b/scheme/guile/geiser/doc.scm
index 4bd063b..8c00e22 100644
--- a/scheme/guile/geiser/doc.scm
+++ b/scheme/guile/geiser/doc.scm
@@ -83,14 +83,13 @@
(else #f))))
(define (macro-args tf)
- (cond ((procedure-property tf 'patterns) =>
- (lambda (pats)
- (filter identity
- (map (lambda (p)
- (and (every symbol? p)
- (list (cons 'required p))))
- pats))))
- (else default-macro-args)))
+ (let* ((pats (procedure-property tf 'patterns))
+ (args (and pats (filter identity
+ (map (lambda (p)
+ (and (every symbol? p)
+ (list (cons 'required p))))
+ pats)))))
+ (or (and args (not (null? args)) args) default-macro-args)))
(define (arity->args art)
(define (gen-arg-names count)