Sha256: a4d34252bded7b8f2173bf374d5fced187a500035193901e9cc9451d6e5e062f

Contents?: true

Size: 794 Bytes

Versions: 3

Compression:

Stored size: 794 Bytes

Contents

# frozen_string_literal: true

require 'enumerator'
require 'progress/with_progress'

# Add with_progress method to Enumerable
module Enumerable
  # run any Enumerable method with progress
  # methods which don't necessarily go through all items (like find, any? or
  # all?) will not show 100%
  # ==== Example
  #   [1, 2, 3].with_progress('Numbers').each do |number|
  #     # code
  #   end
  #
  #   [1, 2, 3].with_progress('Numbers').each_cons(2) do |numbers|
  #     # code
  #   end
  #
  #   (0...100).with_progress('Numbers').select do |numbers|
  #     # code
  #   end
  #
  #   (0...100).with_progress('Numbers').all? do |numbers|
  #     # code
  #   end
  def with_progress(title = nil, length = nil, &block)
    Progress::WithProgress.new(self, title, length, &block)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
progress-3.6.0 lib/progress/enumerable.rb
progress-3.5.2 lib/progress/enumerable.rb
progress-3.5.1 lib/progress/enumerable.rb