Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Enumtatorを一個だけ回すときはnext

 enum = (1..7).each_cons(6)
#=> #<Enumerator: 1..7:each_cons(6)>
> enum.next
#=> [1, 2, 3, 4, 5, 6]

> enum.next
#=> [2, 3, 4, 5, 6, 7]

末尾に達すると、エラーを吐きます。

> enum.next
#=>StopIteration: iteration reached an end

これはenumratableメソッドであるeachとcycleの特権です。

http://www.sitepoint.com/guide-ruby-collections-iii-enumerable-enumerator/