先日がんばった、これ。もっと簡単にできた。
hash = {"hoge" => "hogehoge", "huge" => "hugehuge"} class Foo end foo = Foo.new hash.each do |key, val| instance_eval "def foo.#{key}; '#{val}' end" end p foo.hoge # => "hogehoge" p foo.huge # => "hugehuge"
たぶん、前回の方が色々拡張できそうだけど、今のところ自分のニーズを満たすなら、この程度で十分だった。なんたる。