diff options
| author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-11 18:18:10 +0200 | 
|---|---|---|
| committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-06-11 18:18:10 +0200 | 
| commit | aaa22fbbc9736f6010b534b2d00b5f1f2b14f46a (patch) | |
| tree | a82f5252cb6ec24693e0aa3545a79ecad9cc989e /geiser | |
| parent | ecbddf9fa8b11ff7546b0bc7f8458c0028a4fb9c (diff) | |
| download | geiser-guile-aaa22fbbc9736f6010b534b2d00b5f1f2b14f46a.tar.gz geiser-guile-aaa22fbbc9736f6010b534b2d00b5f1f2b14f46a.tar.bz2 | |
Guile: showing again submodules in module documentation.
Diffstat (limited to 'geiser')
| -rw-r--r-- | geiser/modules.scm | 18 | 
1 files changed, 9 insertions, 9 deletions
| diff --git a/geiser/modules.scm b/geiser/modules.scm index f7ea927..a57145e 100644 --- a/geiser/modules.scm +++ b/geiser/modules.scm @@ -57,7 +57,7 @@  (define (module-path module-name)    (and (module-name? module-name)         (or ((@@ (ice-9 session) module-filename) module-name) -           (module-filename (resolve-module module-name))))) +           (module-filename (resolve-module module-name #f)))))  (define (submodules mod)    (hash-map->list (lambda (k v) v) (module-submodules mod))) @@ -82,19 +82,19 @@            cs)))  (define (module-exports mod-name) -  (let* ((elts (hash-fold classify-module-object +  (let* ((mod (catch #t +                (lambda () (resolve-interface mod-name)) +                (lambda args (resolve-module mod-name)))) +         (elts (hash-fold classify-module-object                            (list '() '() '()) -                          (module-obarray (maybe-module-interface mod-name)))) +                          (module-obarray mod)))           (elts (map sort-symbols! elts))) -    (list (cons 'modules (map (lambda (m) `(,@mod-name ,m)) (car elts))) +    (list (cons 'modules (append +                          (map module-name (submodules mod)) +                          (map (lambda (m) `(,@mod-name ,m)) (car elts))))            (cons 'procs (cadr elts))            (cons 'vars (caddr elts))))) -(define (maybe-module-interface mod-name) -  (catch #t -    (lambda () (resolve-interface mod-name)) -    (lambda args (resolve-module mod-name)))) -  (define (classify-module-object name var elts)    (let ((obj (and (variable-bound? var)                    (variable-ref var)))) | 
