From: Masahiro S. ()
<sa...@to...> - 2004-02-17 15:30:37
|
さかいです。 From: Masao Mutoh <mu...@hi...> Subject: [ruby-gnome2-devel-ja] Kernel#y対応 Date: Tue, 17 Feb 2004 01:40:01 +0900 > むとうです。 > > devel-enでレポートされたKernel#y問題ですが、 > 要は、プロパティアクセッサを自動で定義する際に、 > すでにインスタンスメソッドが登録されていると上書き > しないようになってる現状の仕様に原因があります。 > > で、以下のようなパッチをあてようかと思います。 > > これって何か問題ありますか? Object.instance_methods(false) #=> [] なので、これだと制限になってないんじゃないでしょうか。 > もうちょっとオーバーライドしちゃう範囲を > 制限した方が良いのかなぁ、とか、 > 逆にいっそのこと、全部上書きしちゃえば良いじゃん > とか思ったのですがどうにも。 さすがにobject_idメソッドみたいなメソッドを上書きされてしまうと 混乱するでしょうし、何らかの制限は必要でしょう。 で、制限する範囲ですが、どうせヒューリスティックなんだから、 実行時に調べてロードする順番に依存してしまうよりも、 単にハードコードしてしまってた方が良いような気がしてきました。 -- 酒井 政裕 / Masahiro Sakai |