Carp

Carpモジュールはライブラリのスタックとレースでバッグなどに使われるやつ。

warnレベルのものと、dieレベルのものとあるので使い分ける。

%Carp::Internalにパッケージ名をキーにして1とかいれておくと、そのパッケージではdieしなくなる。


package main;

use Carp;
$Carp::Internal{ Your::Pack } = 1;

use Your::Pack;

Your::Pack->hoge();
warn "here";

package Your::Pack;
use Carp;

sub hoge {
confess "Fuck";
}

hereが出力される。