2011-06-28 13 views

答えて

6

バイナリコードでは、モジュールの名前空間でいくつかの変数と関数を定義する必要はありません。通常の変数と同様に使用できます。 .pmファイルは、必要なときに.soがロードされていることを確認する必要があります。これはDynaLoaderモジュールによって行われます。 DynaLoaderから継承すると、クラスに未知のメソッドが呼び出されたときに.soファイルがロードされていることを確認します。

+0

あなたは '.pm'がどのように' .so'にマップされているか言及しませんでした。 – Learning

+1

@Learning:これはDynaLoader(または軽量のいとこのXSLoader)によって行われました。あなたが望むなら、あなたはそれのソースを読むことができますが、他人はそれをどう扱うかを気にする必要はありません。 – ysth

+1

@Learning:モジュール 'Foo :: Bar'の場合、ファイルは' auto/Foo/Bar.so'です。ルールは '.pm'ファイルとほとんど同じですが、' auto/'ディレクトリが前に付いています。 –

関連する問題