Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Enumerator::Lazyクラス > slice_when
slice_when {|elt_before, elt_after| bool } -> Enumerator::Lazy
[permalink][rdoc]Enumerable#slice_when と同じですが、配列ではなく Enumerator::Lazy を返します。
例:
1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 } # => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007fce84118348>:each>> 1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 }.take(5).force # => [[1, 2], [3, 4, 5, 6, 7], [8, 9, 10, 11, 12], [13, 14, 15, 16, 17], [18, 19, 20, 21, 22]]
[SEE_ALSO] Enumerable#slice_when