From: matz@... (Yukihiro Matsumoto) Date: 2002-11-18T14:56:56+09:00 Subject: [ruby-dev:18828] Re: CFD: adding "condition", "block-call/return", and "load-call/return" trace-events まつもと ゆきひろです In message "[ruby-dev:18826] Re: CFD: adding "condition", "block-call/return", and "load-call/return" trace-events" on 02/11/18, "NAKAMURA, Hiroshi" writes: |実際にそう決まれば、デバガやカバレジツール側でいろいろ |こねくり回して頑張る踏ん切りがつきます。 | |の前に、いくつか確認させてください。 | |> 新しいイベントを増やすのはできるだけ避けたい。今の枠組みでは |> イベントが増えれば増えるほど(飛躍的に)遅くなりますから。むし | |ここでの「イベント」は、イベントの種類、ではなく、 |発生する延べイベント全ての意味ですよね? 書いた時点ではイベントの種類を意図してましたが、イベントの総 数の方がより適切ですね。 |この、「(飛躍的に)遅くなる」は、 |1. trace_funcハンドラを設定している場合 |2. trace_funcハンドラを設定していない場合 |の、どちらでしょうか。 2の設定している場合です。 |> ろ、イベントごとに独立したハンドラを設定できるようにしてから |> 増やすことを考えたいです。 | |こちらの「イベント」は、イベントの種類ごとに、という |意味ですよね。これができるようになると便利だと思います。 | |set_trace_func(trace_proc, event_array = nil) | event_array: line, call, class, c-call, raise, condition, | load-callのsymbolもしくは文字列の配列。nilは全部。 | |とかいう感じ? たぶん別の名前にした方が良いと思いますけど。 set_trace_event_handler(proc, event...) とか。