Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Moduleクラス > define_method (private)
define_method(name, method) -> Symbol
[permalink][rdoc]define_method(name) { ... } -> Symbol
インスタンスメソッド name を定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。
class Foo def foo() p :foo end define_method(:bar, instance_method(:foo)) end Foo.new.bar # => :foo