クラスメソッド内でインスタンスメソッドを定義する
class X def self.def_hoges def hoges :hoges end end def_hoges end X.new.hoges # => :hoges
ふと思い付いたので実験してみた。やっぱりできるんだなぁ。つい癖でdefine_methodを使ってしまうのだが。
class X def self.def_hoges def hoges # !> method redefined; discarding old hoges :hoges end end def hoges :old end def_hoges end X.new.hoges # => :hoges
overrideもできる。