ごとけんです

In message "[ruby-list:10481] Enumerable#collect bug?"
    on 98/10/30, Kazuhiro HIWADA <hiwada / kuee.kyoto-u.ac.jp> writes:

>ひわだです。
>
>以下の script で collect がちょっと予想外の動作をします。
>1.1c0, 1.1c6 を使っています。

これを考えるためにも知っておきたいのですが、
collect は次の定義と等価と思っていいですか??

module Enumerable
  def collect(&block)
    raise LocalJumpError, "yield called out of iterator" unless iterator?

    res = []
    each{|i| res.push (block.call i)}
    res
  end
end

-- gotoken