2016-10-26 13 views
2

printをモジュールに再定義してエクスポートしたいのですが、気付いていません。存在しない名前だけをエクスポートすることができます。 回避策はありますか?モジュールは既存の名前をエクスポートできません

+0

不思議なことに、モジュール内でlib/printを再定義することができ、その変更はユーザーのコンテキストで見えるままです。 – giuliolunati

答えて

3

http://www.rebol.com/r3/docs/concepts/modules-loading.htmlを参照してください:モジュールへの明示的な参照。

モジュールをロードすることは、現在のところ、ユーザーコンテキストで単語を再定義することはありません。 これは設計上の決定かモジュールがまだ完全にベークされていないかどうかはわかりません。

幸いにも、恐ろしい回避策があります:DIY。あなたのモジュールから印刷、次のREBOLのコードを実行「であると印刷」を再定義するために、あなたのケースで

your-module: import %your-module-filename print: :your-module/print 

また、あなたのモジュールをロードする前に、未設定「印刷をしようとしていない、私が試したし、それはどちらもうまくいきませんので、別のSOの質問の話題です。

+0

良いまた、モジュール内で 'export'関数を定義し、メインコードで呼び出すことで作業を行うことができます。 [しかし、http://stackoverflow.com/questions/40284088/trouble-with-export-word-in-moduleを参照してください] – giuliolunati

関連する問題