タグ

rubyとmetaclassに関するkyabのブックマーク (1)

  • yohasebe.com : メタクラス完全理解

    Rubyのメタプログラミングについて興味はあるけどまだきちんと理解していない人は、次の4つのメソッドをよく見てほしい。新たな発見があるかもしれない。 class Object # 特異クラスはどこにでも隠れてる。 def metaclass; class << self; self; end; end def meta_eval &blk; metaclass.instance_eval &blk; end # メタクラスにメソッドを追加 def meta_def name, &blk meta_eval { define_method name, &blk } end # クラスの中でインスタンスメソッドを定義 def class_def name, &blk class_eval { define_method name, &blk } end end 僕はこれらのメソッドを meta

    kyab
    kyab 2010/08/19
    メタプログラミング、メタクラス。他より高度?クラス・インスタンス変数についても詳しい
  • 1