yarv-dev:143
From: SASADA Koichi <ko1 atdot.net>
Date: Wed, 25 Aug 2004 05:16:09 +0900
Subject: [yarv-dev:143] exception message for vcall
ささだです.
なんとなく,こんなコードを書いてみたら,
class C
def method_missing *args
sleep 1
super
end
def foo
hoe
end
def bar
moe()
end
end
Thread.new{
C.new.foo
}
C.new.bar
#=>
t.rb:6:in `method_missing': undefined method `hoe' for #<C:0x2ac6f40> (NoMethodError)
は,これでいいんでしょうか.
(undefined local variable or method `hoe' がほしい,多分)
(答え:誰も気にしません)
class C
def method_missing sel, *args
if sel == :moe
else
moe()
super
end
end
def foo
hoe
end
end
C.new.foo
#=>
t.rb:8:in `method_missing': undefined method `hoe' for #<C:0x2ac7210> (NoMethodError)
でも同じですね.
(答え:誰もこんなことしません)
将来もこんな感じでいいでしょうか?
スレッド越しの話は,スレッド固有の変数にしてしまえばいいか
と思ったんですが,同じスレッド内だと,こいつらのスタックが必
要になるんでやりたくないですねぇ.
--
// SASADA Koichi at atdot dot net
//
--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml
-> 143 2004-08-25 05:16 [ko1 atdot.net ] exception message for vcall 146 2004-08-25 12:12 ┗[matz ruby-lang.org ] 147 2004-08-25 13:32 ┗[ko1 atdot.net ]