[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 02/07: doc: Document #:hide.
From: |
Ludovic Courtès |
Subject: |
[Guile-commits] 02/07: doc: Document #:hide. |
Date: |
Sat, 26 Oct 2024 13:45:58 -0400 (EDT) |
civodul pushed a commit to branch main
in repository guile.
commit 130fdb0c8d6f84e3d476fd88e1d4bacc15ca2cc7
Author: Tomas Volf <~@wolfsden.cz>
AuthorDate: Thu Jun 27 16:18:51 2024 +0200
doc: Document #:hide.
* doc/ref/api-modules.texi (Using Guile Modules): Document #:hide.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
doc/ref/api-modules.texi | 33 ++++++++++++++++++++-------------
1 file changed, 20 insertions(+), 13 deletions(-)
diff --git a/doc/ref/api-modules.texi b/doc/ref/api-modules.texi
index 9f2bba02d..efe739a25 100644
--- a/doc/ref/api-modules.texi
+++ b/doc/ref/api-modules.texi
@@ -196,25 +196,32 @@ whose public interface is found and used.
@cindex binding renamer
@lisp
(MODULE-NAME [#:select SELECTION]
+ [#:hide HIDE]
[#:prefix PREFIX]
[#:renamer RENAMER])
@end lisp
in which case a custom interface is newly created and used.
@var{module-name} is a list of symbols, as above; @var{selection} is a
-list of selection-specs; @var{prefix} is a symbol that is prepended to
-imported names; and @var{renamer} is a procedure that takes a symbol and
-returns its new name. A selection-spec is either a symbol or a pair of
-symbols @code{(ORIG . SEEN)}, where @var{orig} is the name in the used
-module and @var{seen} is the name in the using module. Note that
-@var{seen} is also modified by @var{prefix} and @var{renamer}.
-
-The @code{#:select}, @code{#:prefix}, and @code{#:renamer} clauses are
-optional. If all are omitted, the returned interface has no bindings.
-If the @code{#:select} clause is omitted, @var{prefix} and @var{renamer}
-operate on the used module's public interface.
-
-In addition to the above, @var{spec} can also include a @code{#:version}
+list of selection-specs; @var{hide} is a list of bindings which should
+not be imported; @var{prefix} is a symbol that is prepended to imported
+names; and @var{renamer} is a procedure that takes a symbol and returns
+its new name. A selection-spec is either a symbol or a pair of symbols
+@code{(ORIG . SEEN)}, where @var{orig} is the name in the used module
+and @var{seen} is the name in the using module. Note that @var{seen} is
+also modified by @var{prefix} and @var{renamer}.
+
+The @code{#:select}, @code{#:hide}, @code{#:prefix}, and
+@code{#:renamer} clauses are optional. If all are omitted, the returned
+interface has no bindings. If the @code{#:select} clause is omitted,
+@var{prefix} and @var{renamer} operate on the used module's public
+interface.
+
+The @code{#:hide} operates on list of bindings in the module being
+imported, before any renaming is performed. If both @code{#:select} and
+@code{#:hide} contain a binding, the @code{#:hide} wins.
+
+In addition to the above, @var{spec} can also include a @code{#:version}
clause, of the form:
@lisp
- [Guile-commits] branch main updated (242e8698c -> bb7154fb8), Ludovic Courtès, 2024/10/26
- [Guile-commits] 03/07: doc: Fix implication of omitting optional arguments., Ludovic Courtès, 2024/10/26
- [Guile-commits] 05/07: doc: Fix typo in FFI documentation., Ludovic Courtès, 2024/10/26
- [Guile-commits] 06/07: doc: Recommend alist-copy instead of list-copy., Ludovic Courtès, 2024/10/26
- [Guile-commits] 02/07: doc: Document #:hide.,
Ludovic Courtès <=
- [Guile-commits] 01/07: srfi-64: Accept symbols as test group names., Ludovic Courtès, 2024/10/26
- [Guile-commits] 04/07: doc: Document the peek and pk procedures., Ludovic Courtès, 2024/10/26
- [Guile-commits] 07/07: Fix build failure with GCC 14 and musl on 32-bit systems., Ludovic Courtès, 2024/10/26