トップ «前の日記(2013-04-01) 最新 次の日記(2013-04-04)» 編集

Route 477



2013-04-02

[ruby] メソッドチェーンをinjectで書く

このへんを見て。

obj.foo(1).foo(2).foo(3)

みたいのってうまくmapとかでまとめられないけど、これは

(( obj.foo(1) ).foo(2) ).foo(3)

という左畳込みの形なので、injectを使って

[1,2,3].inject(obj){|sum, item| sum.foo(item)}

と書ける。というメモ。