自動でデータオブジェクトを作成する

前に
変数を代入すると、自動で特異メソッドを生成する
を作ったけれど、既に似たような機能が Ruby で標準装備されていた。
やっぱり同じことを考えているのか、と思うのと同時に、ちょっとショック。


こういう感じに他にも見落としているライブラリとかあるかもね。

require 'ostruct'

record = OpenStruct.new
record.name    = "John Smith"
record.age     = 70
record.pension = 300

puts record.name     # -> "John Smith"
puts record.address  # -> nil


ref. http://www.ruby-doc.org/core/classes/OpenStruct.html