[#30549] [ANN] Ruby 1.8.6 has been released — "Akinori MUSHA" <knu@...>

 Ruby 1.8.6 をリリースしました。

14 messages 2007/03/12

[#30553] help: lib/shell for ruby 1.9 — keiju@... (Keiju ISHITSUKA)

けいじゅ@いしつかです.

13 messages 2007/03/13
[#30585] Re: help: lib/shell for ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/03/15

まつもと ゆきひろです

[#30587] Re: help: lib/shell for ruby 1.9 — keiju@... (石塚圭樹) 2007/03/15

けいじゅ@いしつかです.

[#30588] Re: help: lib/shell for ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/03/15

まつもと ゆきひろです

[ruby-dev:30651] Re: YARVでのalias名の取得方法

From: SASADA Koichi <ko1@...>
Date: 2007-03-20 07:58:17 UTC
List: ruby-dev #30651
 ささだです。

Yukihiro Matsumoto wrote:
> あるのかないのかよくわかりませんが、「できるけど今はない」と
> いう意味だと解釈しました。

 いえ、「今はあります」。だけど、出来れば削りたいところです。

> でも、__callee__がないとエラー時に
> どのメソッドを呼んだのか分からなくないですか。あ、YARVはエラー
> 時にはいつも__method__相当を表示しているのか...そうか。

 エラー時に、というのはスタックトレースの話でしたっけ。これは、どういう
ものであるべきでしょうか。

> | ちょっと追えていないのですが、__callee__, __method__ の定義を教えても
> |らえませんか。
> |
> |class C
> | define_method(:foo) {
> |    p __callee__
> |    p __method__
> |  }
> |end
> |
> |C.new.foo
> |
> | これは何を表示しますか。
> 
> 両方とも:fooを表示します。

 うう、すみません。alias を忘れていました。

class C
 define_method(:foo) {
    p __callee__
    p __method__
  }
  alias bar foo
end

C.new.foo
C.new.bar

でしょうか。でも、define_method も普通のメソッドも同じ挙動にしろといわれ
るんでしょうね。どうやって実装すればいいんだろ。

-- 
// SASADA Koichi at atdot dot net


In This Thread