Sha256: 6225569afe6a33d5d8eadf66763cea8b7e15bbd5e32d36619a2ba46052a19a23

Contents?: true

Size: 395 Bytes

Versions: 6

Compression:

Stored size: 395 Bytes

Contents

module CoreExt
  module EachTimeWithZone #:nodoc:
    def each(&block)
      ensure_iteration_allowed
      super
    end

    def step(n = 1, &block)
      ensure_iteration_allowed
      super
    end

    private

      def ensure_iteration_allowed
        raise TypeError, "can't iterate from #{first.class}" if first.is_a?(Time)
      end
  end
end

Range.prepend(CoreExt::EachTimeWithZone)

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
core_ext-0.0.6 lib/core_ext/range/each.rb
core_ext-0.0.5 lib/core_ext/range/each.rb
core_ext-0.0.4 lib/core_ext/range/each.rb
core_ext-0.0.3 lib/core_ext/range/each.rb
core_ext-0.0.2 lib/core_ext/range/each.rb
core_ext-0.0.1 lib/core_ext/range/each.rb