Associate #:replace info with modules, not variables
* doc/ref/api-modules.texi (Creating Guile Modules): Document #:re-export-and-replace. * module/ice-9/boot-9.scm (module-replacements): New module field. (make-module, make-autoload-interface): Initialize replacements to an empty hash table. (resolve-interface): Propagate replacement info when making custom interfaces. (define-module): Parse a #:re-export-and-replace keyword arg. (define-module*): Handle #:re-export-and-replace. (module-export!, module-re-export!): Add a keyword arg to indicate whether to replace or not. (module-replace!): Call module-export! with #:replace? #t. (duplicate-handlers): Update replace duplicate handler to look for replacement info on the interfaces. * module/srfi/srfi-18.scm (srfi): * module/srfi/srfi-34.scm (srfi): Update to #:re-export-and-replace raise-continuable as raise.
This commit is contained in:
parent
8304b15807
commit
cf08dbdc18
4 changed files with 72 additions and 60 deletions
|
|
@ -354,6 +354,11 @@ in the module body.
|
|||
The @code{#:duplicates} (see below) provides fine-grain control about
|
||||
duplicate binding handling on the module-user side.
|
||||
|
||||
@item #:re-export-and-replace @var{list}
|
||||
@cindex re-export-and-replace
|
||||
Like @code{#:re-export}, but also marking the bindings as replacements
|
||||
in the sense of @code{#:replace}.
|
||||
|
||||
@item #:version @var{list}
|
||||
@cindex module version
|
||||
Specify a version for the module in the form of @var{list}, a list of
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue