Subscribed unsubscribe Subscribe Subscribe

UNIVERSAL::source_location_for を ShipIt しました

gfxさんが こちらのエントリー で紹介されていた UNIVERSAL::source_location_for が大変便利なので、他の環境でも手軽に使うため、モジュール化してGithubに上げたところ、gfxさんからついでにShipItしちゃいましょうとのGOサインをいただいたので、CPANに上げました。

https://metacpan.org/module/UNIVERSAL::source_location_for

use UNIVERSAL::source_location_for;
use File::Spec;
my ($source_filename, $line) = File::Spec->source_location_for('canonpath');

このメソッドはサブルーチンが定義されている元の場所を取得でき、継承した子クラスのデバッグなどにとても役に立ちます。今までは Data::Dump::Streamer::Dumper でパッケージ名だけ取得してましたが、行数も取得したいとずっと思っていたところでした。