[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:557

From: SASADA Koichi <ko1 atdot.net>
Date: Sat, 30 Jul 2005 16:55:10 +0900
Subject: [yarv-dev:557] Re: line no on backtrace

 ささだです。

SASADA Koichi wrote:
>  YARV 版の表記は、以下の点が異なります。
> 
> 1)トップレベルは <main> と表示してあります。
> 2)b@... は、... 中にある block という意味です。
> 3)(*) で示した部分は省略してあります
>  この部分は、C で書いたブロック(NODE_IFUNC)の呼び出し
> 4)raise まで表示されちゃってる
> 
>  さて、どの辺まで許容されますかね。とりあえず、4) は駄目だと思うんで
> Ruby とのマージ後(raise を弄って)変更しますが、その他は別にこのままで
> もいーかなー、とも思うんですが、どうでしょうか。3) はあんまり気にする人
> が居ないので、いいかなー、とか思っていたり。<main> や b@<main> なんかは
> 好き好きかもなー、とか。
> 
>  どうでしょうか。
> 
 yarv-devel のほうと、IRC で教えてもらった意見を参考に、上記プログラム
は次のようにしてみました。

../test.rb:19:in `raise'
../test.rb:19:in `block in <main>'
../test.rb:13:in `block in m'
../test.rb:12:in `each'
../test.rb:12:in `map'
../test.rb:12:in `m'
../test.rb:18:in `<main>'

(参考:Ruby
../test.rb:19
../test.rb:18:in `m'
../test.rb:12:in `map'
../test.rb:12:in `each'
../test.rb:12:in `map'
../test.rb:12:in `m'
../test.rb:18
)

 ブロックの深いネストでは、

def iter
  yield
end

begin
  iter{
    iter{
      iter{
        raise
      }
    }
  }
rescue => e
  puts e.backtrace
end

../test.rb:19:in `raise'
../test.rb:19:in `block (3 levels) in <main>'
../test.rb:12:in `iter'
../test.rb:18:in `block (2 levels) in <main>'
../test.rb:12:in `iter'
../test.rb:17:in `block in <main>'
../test.rb:12:in `iter'
../test.rb:16:in `<main>'

 こんな感じ。

 どうでしょうか。やっぱり今のRubyにあわせたほうがいいですかね。

-- 
// SASADA Koichi at atdot dot net
//

--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

       549 2005-07-29 05:11 [ko1 atdot.net       ] line no on backtrace                    
       550 2005-07-29 07:25 ┣[matz ruby-lang.org  ]                                       
       551 2005-07-29 09:28 ┃┗[nobu.nokada softhome]                                     
       552 2005-07-29 09:45 ┃ ┗[matz ruby-lang.org  ]                                   
       553 2005-07-29 17:32 ┗[ko1 atdot.net       ]                                       
->     557 2005-07-30 16:55  ┗[ko1 atdot.net       ]                                     
       559 2005-07-30 17:27   ┗[matz ruby-lang.org  ]