yarv-dev:914
From: sheepman <sheepman sheepman.sakura.ne.jp>
Date: Fri, 17 Feb 2006 19:24:08 +0900
Subject: [yarv-dev:914] open> super in define_method when called twice
こんばんは、sheepman です。 On Mon, 13 Feb 2006 23:08:37 +0900 SASADA Koichi <ko1 atdot.net> wrote: > > ウワーン、こんなことする奴が悪いんだー、ということで無視しようかと思っ > たんですが、とりあえず対応してみました。ふつーの super の効率がちょっと > 落ちてますが、まぁ、微々たるもんでしょう。 > memoize がまだうまく動きません。 define_method を2回呼んだ時の動作が変です。 $ cat t.rb class A def hoge :hoge end def foo :foo end end class B < A def memoize(name) B.instance_eval do define_method(name) do super end end end end b = B.new b.memoize(:hoge) b.memoize(:foo) p b.hoge $ ruby-1.9 -v t.rb ruby 1.9.0 (2006-02-15) [i686-linux] :hoge $ ./miniruby -v t.rb ruby 1.9.0 (2006-02-14) [i686-linux] YARVCore 0.3.3 (rev: 435) [opts: ] :foo -- sheepman / TAMURA Takashi sheepman sheepman.sakura.ne.jp http://sheepman.parfait.ne.jp/ -- ML: yarv-dev quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml
859 2006-02-13 21:53 [sheepman sheepman.sa] open> super in define_method 861 2006-02-13 23:08 ┗[ko1 atdot.net ] fixed> Re: open> super in define_method -> 914 2006-02-17 19:24 ┗[sheepman sheepman.sa] open> super in define_method when called twice 922 2006-02-18 01:29 ┗[ko1 atdot.net ] 923 2006-02-18 02:50 ┗[ko1 atdot.net ] fixed> Re: open> super in define_method when called twice