1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 20:30:28 +02:00

(autoload-info): Also handle `defmacro-public' forms.

This commit is contained in:
Thien-Thi Nguyen 2001-07-22 11:03:47 +00:00
parent 76577031a6
commit 2417a54f11

View file

@ -38,9 +38,10 @@ exec ${GUILE-guile} -c "(apply $main (cdr (command-line)))" "$@"
;; ;;
;; For each file, a symbol triggers an autoload if it is found in one ;; For each file, a symbol triggers an autoload if it is found in one
;; of these situations: ;; of these situations:
;; - in the `:export' clause of a `define-module' form; ;; - in the `:export' clause of a `define-module' form
;; - in a top-level `export' or `export-syntax' form; ;; - in a top-level `export' or `export-syntax' form
;; - in a `define-public' form. ;; - in a `define-public' form
;; - in a `defmacro-public' form
;; ;;
;; The module name is inferred from the `define-module' form. If either the ;; The module name is inferred from the `define-module' form. If either the
;; module name or the exports list cannot be determined, no autoload entry is ;; module name or the exports list cannot be determined, no autoload entry is
@ -100,6 +101,13 @@ exec ${GUILE-guile} -c "(apply $main (cdr (command-line)))" "$@"
(loop (read p) (loop (read p)
module-name module-name
(cons (cadr form) exports))) (cons (cadr form) exports)))
((and (list? form)
(< 3 (length form))
(eq? 'defmacro-public (car form))
(symbol? (cadr form)))
(loop (read p)
module-name
(cons (cadr form) exports)))
(else (loop (read p) module-name exports))))))) (else (loop (read p) module-name exports)))))))
(define (generate-autoload . args) (define (generate-autoload . args)