動的にメンバ変数を生やす

メタプログラミングのメモ。

# -*- coding: utf-8 -*-
class MyClass; end

hash = {:test => "テストだよ"}

MyClass.class_eval do 
  hash.each_pair do |k, v|
    define_method(k) { v }
  end
end

my_class = MyClass.new
puts my_class.test

メタプログラミングRuby 第2版

メタプログラミングRuby 第2版