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

add submodules field to modules

* module/ice-9/boot-9.scm (module-type, module-constructor): Add a field
  to modules, a table that will hold submodules.
  (make-module, make-autoload-interface): Adapt.
This commit is contained in:
Andy Wingo 2010-04-22 14:12:05 +02:00
parent 9b023f3c63
commit f905381d31

View file

@ -1565,7 +1565,8 @@ If there is no handler at all, Guile prints an error and then exits."
(import-obarray #:no-setter)
observers
(weak-observers #:no-setter)
version)))
version
submodules)))
;; make-module &opt size uses binder
@ -1606,7 +1607,8 @@ If there is no handler at all, Guile prints an error and then exits."
#f #f #f
(make-hash-table %default-import-size)
'()
(make-weak-key-hash-table 31) #f)))
(make-weak-key-hash-table 31) #f
(make-hash-table 7))))
;; We can't pass this as an argument to module-constructor,
;; because we need it to close over a pointer to the module
@ -2680,7 +2682,8 @@ If there is no handler at all, Guile prints an error and then exits."
(set-car! autoload i)))
(module-local-variable i sym))))))
(module-constructor (make-hash-table 0) '() b #f #f name 'autoload #f
(make-hash-table 0) '() (make-weak-value-hash-table 31) #f)))
(make-hash-table 0) '() (make-weak-value-hash-table 31) #f
(make-hash-table 0))))
(define (module-autoload! module . args)
"Have @var{module} automatically load the module named @var{name} when one