ローファイ日記

出てくるコード片、ぼくが書いたものは断りがない場合 MIT License としています http://udzura.mit-license.org/

2015-05-14から1日間の記事一覧

Enumerator#| を定義してパイプライン演算子もどき

気持ちはパイプラインになれる。 class Enumerator def |(f) self.map(&f).to_enum end end [1, 2, 3].to_enum | ->(s) { s * 2 } | ->(s) { s + 10 } #=> #<Enumerator: [12, 14, 16]:each> ポイントとしては、EnumeratorがEnumeratorを返すメソッドにしないとパイプラインを繋げない...Pro</enumerator:>…