2013年10月1日火曜日

オープンクラスとアラウンドエイリアスの実装

class Fixnum
  alias :old_plus :+

   def +(value)
     self.old_plus(value).old_plus(1)
    end
end
1+2 => 4という答えが返ってくる。 Rubyの演算子の多くはミミック(擬態)メソッドになっています。

0 件のコメント: