けいじゅ@日本ラショナルソフトウェアです.

In [ruby-dev :01570 ] the message: "[ruby-dev:1570] Re: monitor.rb ",
on Mar/03 20:20(JST) Shugo Maeda writes:

>前田です。

>|反応しなくてすいません. メイルは読んでいたんですけどね.
>
>いえいえ。
>最近メールを全部読むだけでも結構大変ですよね。

それはいえる(**;;;

>newがすでにオーバーライドされているクラスをサブクラス化する場合は
>継承されたクラスでsingleton_methodsを呼んでもnewがちゃんと入って
>いるので大丈夫なのではないでしょうか。

なるほど. その通りですね.

>|案1
>(snip)
>|2. initialize時にそのオブジェクト(self)がどっちのタイプか判別し,
>|   extendする.
>
>extendにするのはコストがもったいないと思ったのですが、

私もそう思います.

>|案2
>(snip)
>|2. インスタンス生成(initialize)時にそのオブジェクト(self)がどっちのタ
>|   イプか判別し, その時点で必要なモジュールをクラスにインクルードする.
>|# 何かダミーのモジュールが必要そう.
>
>これなら、
>
>  def initialize(*args)
>    super
>    type.include(MonitorMixin.extendable_module(self))
>    mon_initialize
>  end
>
>みたいにすれば、includeは複数回行っても何もしないから
>大丈夫そうですね。
># なんとなく気持ち悪い気もしますけど...。

私もそう思います(^^;;;;

やはり現状では, 前田さんの案が良いのかなあ...

__
................................石塚 圭樹@日本ラショナルソフトェア...
----------------------------------->> e-mail: keiju / rational.com <<---