From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tomas Volf <~@wolfsden.cz> Newsgroups: gmane.lisp.guile.bugs Subject: bug#71800: [PATCH 1/2] doc: Document #:hide. Date: Thu, 27 Jun 2024 16:18:51 +0200 Message-ID: <20240627141852.30845-1-~@wolfsden.cz> References: <20240627141716.30583-1-~@wolfsden.cz> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22952"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Tomas Volf <~@wolfsden.cz> To: 71800@debbugs.gnu.org Original-X-From: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Thu Jun 27 16:20:35 2024 Return-path: Envelope-to: guile-bugs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sMpzG-0005mU-Gi for guile-bugs@m.gmane-mx.org; Thu, 27 Jun 2024 16:20:34 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sMpyj-0007br-P5; Thu, 27 Jun 2024 10:20:01 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sMpyh-0007bQ-9U for bug-guile@gnu.org; Thu, 27 Jun 2024 10:20:00 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sMpyh-0008Dh-10 for bug-guile@gnu.org; Thu, 27 Jun 2024 10:19:59 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sMpyj-0005fT-Ty for bug-guile@gnu.org; Thu, 27 Jun 2024 10:20:01 -0400 X-Loop: help-debbugs@gnu.org In-Reply-To: <20240627141716.30583-1-~@wolfsden.cz> Resent-From: Tomas Volf <~@wolfsden.cz> Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Thu, 27 Jun 2024 14:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 71800 X-GNU-PR-Package: guile X-GNU-PR-Keywords: patch Original-Received: via spool by 71800-submit@debbugs.gnu.org id=B71800.171949794421708 (code B ref 71800); Thu, 27 Jun 2024 14:20:01 +0000 Original-Received: (at 71800) by debbugs.gnu.org; 27 Jun 2024 14:19:04 +0000 Original-Received: from localhost ([127.0.0.1]:43052 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sMpxn-0005e3-CI for submit@debbugs.gnu.org; Thu, 27 Jun 2024 10:19:03 -0400 Original-Received: from wolfsden.cz ([37.205.8.62]:51244) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <~@wolfsden.cz>) id 1sMpxk-0005dM-85 for 71800@debbugs.gnu.org; Thu, 27 Jun 2024 10:19:01 -0400 Original-Received: by wolfsden.cz (Postfix, from userid 104) id D68C02A8994; Thu, 27 Jun 2024 14:18:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1719497935; bh=c8v4ocMYGzv29otCIIWLoFB/10HZ/10/GITszo0FIVA=; h=From:To:Cc:Subject:Date; b=i+WS+qiepWnvJdKJyuXM5v+nnbAY7Zce3ZV0+zKj8E5QomOEjgRlYPdW7U4z4/CCn ivNuYzAjENHQiHoq7Nwkbck8S9+FuUHY0Pt5HHB0M7lIO/vm/NGzhAlbIik+TpgZ7Y UXbE299YVptUwvOODVB2UMtlzSB4IUf1BFfpj8aZ135cUF//jeeES1U3oD0HV3vulx W2HT+9gqf7l+miPQPh7sbdaR8xqxTqbKSBSBv731j205tyy4+J09fsnE1zjJKiq0KE oOmbC9jSZfgPD7Je8P2sTW+Fut7Yl8sJq0YXL1kh/nCxelhIAgXc6af5CHqWnY+KHh zka59wneRD6krmht7Vvp1bW6eQTlF2BYUe2xvUsL2oSKlUQcKJE9qmAW/sHo1YRpix WJFlq1idbdUyoZRS/L9yswVTfgj3YcsQCBU1sj3CCUzogHzXHGrfftV4XuwIRoRR5u sEdRbt2fykzw86LdRa1CpOa9w8ljNOUr+MfE6WBw9bbNeFgpqLgl0Heop6qaZAjR45 V1iWnuAf+nlYoQDWD4MkJO5wDKnl5EpVYgU1yugpHKB/6SzciBNiuKUYQD+q/8Bdbf 9isiCow+mrnA4bkeS3bmNlYyqJayuomK5+1v8UiL4n4AU6Cjf2Cjezb2sXta5wWvaJ 5Hr+o1qv+6DmMPdzchvlu6nc= Original-Received: from localhost (unknown [128.0.188.242]) by wolfsden.cz (Postfix) with ESMTPSA id 26D822A7847; Thu, 27 Jun 2024 14:18:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1719497935; bh=c8v4ocMYGzv29otCIIWLoFB/10HZ/10/GITszo0FIVA=; h=From:To:Cc:Subject:Date; b=i+WS+qiepWnvJdKJyuXM5v+nnbAY7Zce3ZV0+zKj8E5QomOEjgRlYPdW7U4z4/CCn ivNuYzAjENHQiHoq7Nwkbck8S9+FuUHY0Pt5HHB0M7lIO/vm/NGzhAlbIik+TpgZ7Y UXbE299YVptUwvOODVB2UMtlzSB4IUf1BFfpj8aZ135cUF//jeeES1U3oD0HV3vulx W2HT+9gqf7l+miPQPh7sbdaR8xqxTqbKSBSBv731j205tyy4+J09fsnE1zjJKiq0KE oOmbC9jSZfgPD7Je8P2sTW+Fut7Yl8sJq0YXL1kh/nCxelhIAgXc6af5CHqWnY+KHh zka59wneRD6krmht7Vvp1bW6eQTlF2BYUe2xvUsL2oSKlUQcKJE9qmAW/sHo1YRpix WJFlq1idbdUyoZRS/L9yswVTfgj3YcsQCBU1sj3CCUzogHzXHGrfftV4XuwIRoRR5u sEdRbt2fykzw86LdRa1CpOa9w8ljNOUr+MfE6WBw9bbNeFgpqLgl0Heop6qaZAjR45 V1iWnuAf+nlYoQDWD4MkJO5wDKnl5EpVYgU1yugpHKB/6SzciBNiuKUYQD+q/8Bdbf 9isiCow+mrnA4bkeS3bmNlYyqJayuomK5+1v8UiL4n4AU6Cjf2Cjezb2sXta5wWvaJ 5Hr+o1qv+6DmMPdzchvlu6nc= X-Mailer: git-send-email 2.45.1 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.lisp.guile.bugs:10875 Archived-At: * doc/ref/api-modules.texi (Using Guile Modules): Document #:hide. --- doc/ref/api-modules.texi | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 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}. +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{#: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{#: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. -In addition to the above, @var{spec} can also include a @code{#:version} +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 -- 2.45.1