From: Sato Hiroshi Date: 2007-03-22T16:08:13+09:00 Subject: [ruby-list:43286] モジュールのinclude先の名前 hirocyです. モジュールのコード内で,いま自分が取り込まれようとしている クラスの名前を知る方法はあるでしょうか? または,取り込まれる先に,あるメソッドが定義されているかどうかを 判別する方法でもかまいません. なぜそんなことを知りたいかといいますと,モジュール内の挙動を 取り込まれる先のクラスに応じて動的に変えたいからです. 例えば,クラスCla1では定義するがCla2では定義しないメソッドを 書きたい場合です.Cla2には同名のメソッドが始めから存在しており, そのままの定義で互換性があるので上書きしたくないんです. 最初はselfで行けるかと思ったのですが,selfは取り込み先のクラスでは なく,取り込まれるモジュールそのものになるようですね. モジュールを2つ準備するのが正しいのかもしれませんが… -- // hirocy