Kenta MURATA
murak****@nifty*****
2003年 8月 17日 (日) 18:34:32 JST
むらけんです. In message <m3zni****@namaz*****> at Sun, 17 Aug 2003 18:23:42 +0900, Satoru Takabayashi <sator****@namaz*****> wrote: > > ということで patch を書いてみました.プラグインとしてのみ使用 > > するものは > > > > define_plugin(:name) do |arg1, arg2, *rest| > > ... > > end > > んと、趣味の問題かもしれませんが、こうした特殊な書き方を覚え > るのは苦手です。 んー,そうですね.趣味の問題じゃないでしょうか.というのも,実 は私が最初に思い付いたのが,こういう書き方だったので... そして,これを実装してしまえばついでに > > このように定義できるようになってます.あと Module#private のよ > > うに > > > > plugin_method(:name1, :name2, ...) > > 一方、普通にメソッドを定義して、このように export する方は好 > みです。 こっちも実現できたので,やってみただけなんですよね.最終的には, みなさんで仕様を決めていただければ良いと思うので,上のクロージャ を登録する方法を強制するつもりはないんです. > パッチを見たところ、respond_to? と send を置き換えているとこ > ろが無用に複雑と感じました。 陽に export するだけの仕組みな > ら、こうした置き換えは不要だと思います。 respond_to? を上書きしたのは,単純に style の方を書換えなくて 良いようにと,便宜上やっただけです.なので,複雑になってしまっ たかもしれません. ただし,send を上書きしたのは無用に複雑だとは思えないですね. Plugin のインスタンスにメッセージを送るという事が,「プラグイ ン」を呼び出すという事と等価である事は,あまり不自然に思えませ ん. > 陽に export する方法があれば define_plugin(:name) do ... end > といった書き方を導入する必要はないと思うのですが、いかがでしょ > うか。 ということで,クロージャ形式は私の好みです. -- 1024D/2A3FDBE6 2001-08-26 Kenta MURATA (muraken) <murak****@nifty*****> Key fingerprint = 622A 61D3 280F 4991 4833 5724 8E2D C5E1 2A3F DBE6