概要 メタプログラミングRuby勉強録。 今回のトピックはメタプログラミングの代名詞の一つ、オープンクラスです。 オープンクラスとは 既存するクラスを好きな場所で再オープンし、 メソッド修正・追加など任意の変更を加えられる機能のこと。 例えば 以下のような文字列操作メソッドがあったとします。 def love_ruby(str) str + ' I love Ruby!' end love_ruby('My name is kidachi.') => "My name is kidachi. I love Ruby!"