これは"How can I get around a ‘die’ call in a Perl library I can’t modify?"のフォローアップです。Perlサブルーチンでキャッチしたエラーとキャッチしていないエラーの両方をどうやって処理するのですか?
私はライブラリを呼び出すサブルーチンを持っています - クラッシュ - ときには何度もあります。しかし、そのIエラー条件がある
my $status=eval{function($param);};
unless($status){print [email protected]; next;}; # print error and go to
# next file if function() fails
:むしろソファそれぞれはeval {}と、このサブルーチン内のコールよりも、私はちょうどそれが死ぬことを許可し、私のサブルーチンを呼び出しレベルではeval {}を使用しますfunction()でcatchとdoを行うことができます。キャッチされたエラーとキャッチされていないエラーの両方に対して正しい動作を得るために、サブルーチンと呼び出しルーチンでエラーキャッチを設計する最も適切でエレガントな方法は何ですか?
あなたの括弧はすごいですね! +1 – Axeman
さて、私は今朝彼らを磨きました。 –