タグ

2011年9月5日のブックマーク (1件)

  • Perlで例外オブジェクトをeval & catch - はこべにっき ♨

    ひさびさにPerlベストプラクティスネタ。 Perlで例外処理というと、evalして$EVAL_ERROR(= $@)の文字列を判定するしかないと思っていたのだけれど、ちゃんと例外オブジェクト使う方法があった。やっぱりなんでもありだなPerlは。 PBPによると、例外オブジェクトは自分で作ることもできるのだけれど、いくつも注意しなければならないポイントがあるようだ。 文字列変換(q{""})のオーバーロード 例外をキャッチしたかを返すcaughtメソッド エラーメッセージの出力先の変更 このあたりが正しく実装できていなければだめ。しかしながら、CPANにちょっとお伺いをたてるだけで、例外用のException::Classといういかにも便利そうなモジュールを利用できるらしい。 このException::Classを利用して、Perlの例外オブジェクトを定義してみた。 use warning

    Perlで例外オブジェクトをeval & catch - はこべにっき ♨