diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-02-28 04:35:45 +0100 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2009-02-28 04:35:45 +0100 |
commit | d0f98a72159710f67f0cd4cfb8bf9d14ab557971 (patch) | |
tree | 6157e220a03087a880b733d3714a8f65cfb08fdb /geiser/introspection.scm | |
parent | c60b2e0db1190d2164fd2574ee8bcace4bb2ffff (diff) | |
download | geiser-guile-d0f98a72159710f67f0cd4cfb8bf9d14ab557971.tar.gz geiser-guile-d0f98a72159710f67f0cd4cfb8bf9d14ab557971.tar.bz2 |
Simpler handling of rest args in Emacs' side.
Diffstat (limited to 'geiser/introspection.scm')
-rw-r--r-- | geiser/introspection.scm | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/geiser/introspection.scm b/geiser/introspection.scm index 0394926..7e468e7 100644 --- a/geiser/introspection.scm +++ b/geiser/introspection.scm @@ -67,7 +67,7 @@ (let ((sgn `(,fun ,@(or req '()) ,@(if opt (cons #:optional opt) '()) ,@(if key (cons #:key key) '())))) - (if rest `(,@sgn . ,rest) sgn)))) + (if rest `(,@sgn #:rest ,rest) sgn)))) (define (find-position args form) (let* ((lf (length form)) @@ -89,7 +89,7 @@ (else (+ 1 req (if (> opt 0) (+ 1 opt) 0) (if (null? keys) 0 (+ 1 (length keys))) - (if rest 1 0)))))))) + (if rest 2 0)))))))) (define (symbol->obj sym) (and (symbol? sym) |