2
prefix-out
を使用すると、エクスポートされた識別子の名前をすべて同じにすることができます。たとえば:`suffix-out` in Racket
#lang racket
(provide (prefix-out mymod: (all-defined-out)))
(define x 5)
(define y 6)
そして今mymod:x
とmymod:y
は、そのファイルの内部でx
とy
にバインドする必要があります。
モジュールがエクスポートしているすべての識別子に接尾辞を追加する同様の方法はありますか?私のような何かを行うことができるように:
#lang racket
(provide (suffix-out -from-mymod (all-defined-out)))
(define x 5)
(define y 6)
そして今、これを必要なモジュールがx-from-mymod
とy-from-mymod
は、このモジュールでx
とy
にバインドされています。
ありがとうございました。私が実際に好奇心をそそられてきたことの一つは、「フィルタリングされた」と「名前の変更」の違いは何ですか? –
@LeifAndersen 'filtered-out'は、エクスポートのリストに対して効果的に' filter-map'を行いますが、 'rename-out'は明示的な名前変更リストです。すなわち、前者は任意の組のエクスポートに対して動作することができますが、名前を変更するとそれを1つずつリストします。より密接に関連している2つは、「名前の変更」と「唯一の変更」です。前者はすべてをエクスポートし、リストされた識別子の名前を変更しますが、 'only-out'は明示的にリストする識別子のみをエクスポートします。 –
ああ、そうですね。ありがとうございました。^_ ^ –