呼び出し元の情報を得る

back
caller 組み込み関数を使う

( $package,    # 0: パッケージ名
  $filename,   # 1: ファイル名
  $line,       # 2: 呼び出しもとの行数
  $subr,       # 3: 関数名
  $has_args    # 4: defined @_ なら1/ ないなら 0 ... &func() は空リストなので真
  $wantarray,  # 5: リストコンテキストなら1, スカラーなら0, void なら偽
  $evaltext,   # 6: 存在する場合のみ、eval STRING のテキスト
  $is_require, # 7: do, require, use によってロードされていれば真
  $hints,      # 8: 
  $bitmask     # 9:
 ) = caller($i)

引数は、0 を指定すれば自身の情報を、1 を指定すれば、呼び出した親の情報を、
2 を指定すれば、親の親(以下略)

アプリログ等で、戻り値の引数 3 や 2 で、デバッグログ用途に使うと吉。

back