Sha256: eecf5e11d7125332d48345cfc4f2fb4c29a5ee5803b1abc20cb696f362bb8387

Contents?: true

Size: 768 Bytes

Versions: 1

Compression:

Stored size: 768 Bytes

Contents

require 'enumerator'
if (Enumerable::Enumerator rescue false)
  module Enumerable
    class Enumerator
      # Standard in Ruby 1.8.7+. See official documentation[http://ruby-doc.org/core-1.9/classes/Enumerator.html]
      Backports.make_block_optional self, :each, :test_on => [42].to_enum

      def next
        require 'generator'
        @generator ||= ::Generator.new(self)
        raise StopIteration unless @generator.next?
        @generator.next
      end unless method_defined? :next

      def rewind
        @object.rewind if @object.respond_to? :rewind
        require 'generator'
        @generator ||= ::Generator.new(self)
        @generator.rewind
        self
      end unless method_defined? :rewind
    end if const_defined? :Enumerator
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
backports-2.8.2 lib/backports/1.8.7/enumerator.rb