From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2008-11-12T18:24:17+09:00 Subject: [ruby-dev:37076] Re: forwardable in trunk けいじゅ@いしつかです. ずいぶんたってしまいましたが... In [ruby-dev :36228 ] the message: "[ruby-dev:36228] forwardable in trunk ", on Sep/09 17:59(JST) Keiju ISHITSUKA writes: >trunkの版では, SingleForwardable をなくして, Forwardable で代用してい >ますが, これでは元の振る舞いと同じにはできません. >というわけで, trunkに入っている forwardable は前提(Forwardableと >SingleForwardableをいっしょにできるということ)から間違っているので, 拡 >張されている部分を除いて元のものに戻したいのですが? 元に戻すのは簡単なのですが... trunkに入っているものになった理由は, オリジナルがForwardableと SingleForwardableでほとんど同じコードになっているのが気にくわなかった のかなと推測できます. それも分からなくもないので, Forwardableと SingleForwardableで適度に共有できるうまい方法はないかなと考えているの ですが, なかなか難しいです... 要求としては, 当たり前ですがForwardable, SingleForwardable がちゃんと 動作することで, 今のtrunkにあるように クラスに対して def_single_delegator出来ないのはNGです. さらに, class Foo extend Forwardable extend SingleForwardable def_instance_delegator ... def_single_delegator ... の用になっていても両者が定義できることです. 何かエレガントな解決案ないでしょうか? __ ---------------------------------------------------->> 石塚 圭樹 <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---