From: matz@... (Yukihiro Matsumoto) Date: 1997-12-12T11:55:54+09:00 Subject: [ruby-list:5648] Re: undef method まつもと ゆきひろです In message "[ruby-list:5632] undef method" on 97/12/11, Keiju ISHITSUKA writes: |けいじゅ@日本ラショナルソフトウェアです. | |undefしたメソッドをもう一度生かすにはどうしたら良いのでしょうか? undefは「まったくなかったことにする」操作ですからねえ. これは * aliasで別の名前で保存しておき * undef * 終ったら再びaliasで戻す というやり方でできるかもしれません.実装上何回も繰り返すこと はお勧めしませんが. 別の方法としては * 1.1b1からあるModule#remove_methodを使う というものがあります.この場合 # 一時的に別の定義を得意メソッドに定義する eval 'class << f def foo; print "foo\n"; end end' # 元の定義に戻したい... eval 'class << f remove_method :foo end' という感じですかね. # 1.1b1ではキャッシュの不整合が起きるかも まつもと ゆきひろ /:|)