Jun Inoue
jun00****@hotpo*****
2005年 3月 11日 (金) 13:20:05 JST
On Wed, 09 Mar 2005 21:09:25 +0900 YamaKen <yamak****@bp*****> wrote: > [Anthy-dev 1812]の修正も含めてtrunkに取り込みました。ありがとう > ございました。 こちらこそありがとうございます。 > ところで、井上さんの手元ではその後の開発など進めてらっしゃいませ > んでしょうか。最近重い機能を実装したので簡単なプロファイラが欲し > いと思っていたところなんですが、uim-dbをちょっといじって以下のよ > うにbreakpoint毎にhookが仕掛けられれば目的は果たせると考えていま > す。 > > (uim-db-set-command! <id> (lambda (id expr) > (let ((entry (assv id count-alist))) > (if entry > (set-cdr! entry (+ (car entry) 1)) > (set! count-alist > (cons (cons id 1) count-alist)))) > ;; record backtrace info also > (uim-db-inspect expr) > (uim-db-continue))) 他のプロジェクトに手を出してるので開発は進めていませんでしたが、hook は 前から考えていたので、今日明日ぐらいに書いてみます…多分。 ただ、uim-db-inspect というのがどういう動作をすればよいのかちょっとわか りません。slib.c の this_frame を返す関数でしょうか? あと、何げに uim-db-continue が面倒だったりします。フラグを導入して ad hoc に動かすことはできるんですが。 ちなみに実はコードを挿入するだけなら、既に (let ((pos (uim-db-find <file> <line>))) (uim-db-insert-code! pos <code>) ; 挿入 ... (uim-db-restore-code! pos)) ; 削除 でできたりします。 -- Jun Inoue jun0****@users*****