From: Sato Hiroshi Date: 2007-03-22T16:39:42+09:00 Subject: [ruby-list:43287] Re: モジュールのinclude先の名前 再びhirocyです. On Thu, 22 Mar 2007 16:08:13 +0900, Sato Hiroshi wrote: > モジュールのコード内で,いま自分が取り込まれようとしている > クラスの名前を知る方法はあるでしょうか? こちらはまだわかってませんが, > または,取り込まれる先に,あるメソッドが定義されているかどうかを > 判別する方法でもかまいません. こちらは,defined?を使えばいいことがわかりました. モジュール内でのdefined?は,取り込み先もコンテキストとして 含めるのですね. そして, > 例えば,クラスCla1では定義するがCla2では定義しないメソッドを > 書きたい場合です.Cla2には同名のメソッドが始めから存在しており, > そのままの定義で互換性があるので上書きしたくないんです. についても,mixinの優先順位を考えれば,モジュールで同名のメソッドを 定義してしまっても,もともとの定義が優先されると気づきました. (間違っていたらご指摘ください) #スーパークラスのメソッドの場合はmixinの方が優先されますが... ひとまずなんとかなりましたので,その自己フォローでした. -- // hirocy