Perlモジュールは__PACKAGE__を返すべきだ!
Perlモジュールの慣例として、最後に 1; を書くというのがありますよね。
perldoc perlmodやperldoc -f require にも書いてある由緒正しい慣例。
これは、require時に初期化が正常に実行されたことを示すためにtrue値を返さなければならないからだけど、
これを __PACKAGE__; (クラス名)にしようよ!っていう提案です。
なぜなら
use UNIVERSAL::require;
SomeClass->require->new();
って出来るから。
それだけです。それだけだけど、何の意味もない1を返すよりはマシじゃないっすか?
ってこんな誰も見てないブログで書いてもしょうがないけど ><
2007/07/30 23:45追記
あー、ごめんなさい。やっぱだめっす。 2度目以降のrequireではファイルで何を返そうとも、 単なる真値を返すだけですね。
$ perl -e'warn require Foo; warn require Foo;'
Foo at -e line 1.
1 at -e line 1.
そりゃそうだ。 恥エントリ。
カテゴリ
Perlトラックバック(0)
このブログ記事を参照しているブログ一覧: Perlモジュールは__PACKAGE__を返すべきだ!
このブログ記事に対するトラックバックURL: http://www.fs-output.com/rintaro/mt/mt-tb.cgi/20

コメントする