Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Moduleクラス > method_undefined (private)
method_undefined(name) -> ()
[permalink][rdoc]このモジュールのインスタンスメソッド name が Module#undef_method によって削除されるか、 undef 文により未定義にされると、インタプリタがこのメソッドを呼び出します。
特異メソッドの削除をフックするには BasicObject#singleton_method_undefined を使います。
class C def C.method_undefined(name) puts "method C\##{name} was undefined" end def foo end def bar end undef_method :foo undef bar end
実行結果:
method C#foo was undefined method C#bar was undefined