[Tokyo.pm] Re: サブルーチンの実装の抽出

Hiroyuki OYAMA oyama @ crayfish.co.jp
2002年 2月 27日 (水) 06:00:21 CST


クレイフィッシュの小山です。

On Wed, 27 Feb 2002 12:06:20 +0900
maeda @ tokyo.pm.org wrote:
: デバッガで「l &$x」とかやったらわからないかな。
: → 試してみたけど、evalで作ったサブルーチンのコードは見られなかった。

DEBUG>l Class:method

でその物が出てきたので、perl5db.plをゴニョゴニョ見てみたの
ですが挫折しました。。。
宮川さんに教えてもらったModule::Infoと、perl5db.plを眺めて
みてどちらもサブルーチンの開始行と終了行を取得・表示してい
て、恐らくこの辺の情報の取得の仕方は同じ手続きっぽいな〜っ
てあたりで挫折。

サブルーチンの開始行と終了行を得るのに、手軽なのはこんな感
じでしょうか。

perl -MModule::Info -e '%pos =
Module::Info->new_from_module("CGI")->subroutines; printf
"start: %d, end: %d\n", $pos{"CGI::charset"}->{start},
$pos{"CGI::charset"}->{end}'


Devel::Peek::DeadCode()した結果にも開始行らしき情報が含ま
れてるのでそのへんから追って見ようかしらん?
______________
Hiroyuki OYAMA <oyama @ crayfish.co.jp>
System Operations Dept.
Crayfish Co.,Ltd. <http://Crayfish.CO.JP/>
  "PerlとRubyでYahoo!Messenger"
   -> http://ymca.infoware.ne.jp/




Tokyo-pm メーリングリストの案内