7

私はから読んLog4Perlperl.com
います チュートリアルでは、次のように書かれています: use Log::Log4perl qw(:easy);

:の前は何easyですか?ある種の特別な構文ですか?

4

2 に答える 2

9

Specialized Import Lists、特に export タグ用の特別な構文です。

そのドキュメントのモジュールのエクスポーター部分の例を次に示します

@EXPORT      = qw(A1 A2 A3 A4 A5);
@EXPORT_OK   = qw(B1 B2 B3 B4 B5);
%EXPORT_TAGS = (T1 => [qw(A1 A2 B1 B2)], T2 => [qw(A1 A2 B3 B4)]);

そのモジュールのユーザーは次のように言うことができます:

use Module qw(:DEFAULT :T2);

@EXPORTデフォルト セット ( ) からすべての名前と、セットで定義されている名前をインポートしますT2

そうでもなければ...

問題のパッケージはimportサブをオーバーロードし、オプションで必要なことは何でもします。これは、 ameseeの回答によると、このパッケージが行うようです。

于 2013-05-26T13:49:35.563 に答える
4

これは特別な perl 構文ではありません。この文字列を構成の値のように見せるのは、作成者によって決定されたプレフィックスです。インポート定義で確認できます。のキーを持つハッシュ内の値の存在を探すだけです:easy。文字「:」、「e」、「a」、「s」、「y」で構成される文字列のみ。

于 2013-05-26T13:48:46.210 に答える