diff options
Diffstat (limited to 'src/geiser')
| -rw-r--r-- | src/geiser/geiser.ss | 14 | 
1 files changed, 13 insertions, 1 deletions
diff --git a/src/geiser/geiser.ss b/src/geiser/geiser.ss index ed305f9..0d3928c 100644 --- a/src/geiser/geiser.ss +++ b/src/geiser/geiser.ss @@ -21,7 +21,8 @@            geiser:macroexpand            geiser:symbol-location            geiser:module-location -          geiser:add-to-load-path) +          geiser:add-to-load-path +          geiser:symbol-documentation)    (import (chezscheme))    (import (geiser-data)) @@ -265,6 +266,17 @@                 `(("file" . ,(with-extension obj (car exts)))))                (else (loop (cdr exts))))))) +  (define (docstr lib id) +    (format "A ~a defined in library ~a" +            ((or (inspect/object (try-eval id)) (lambda (x) "value")) 'type) +            lib)) + +  (define (geiser:symbol-documentation id) +    (let ((lib (symbol-lib id))) +      (and lib +           `(("docstring" . ,(docstr lib id)) +             ("signature" . ,(id-autodoc id)))))) +    (define geiser:no-values void)    (define geiser:newline newline)  | 
