def increment!
      @iteration += 1

      return unless (iteration - last_printed_iteration) >= @min_iterations
      # We check the counter first, to reduce the overhead of Time.now
      return unless (current_time! - last_print_time) >= @min_interval
      return if iteration == total && !@leave

      printer.status(iteration, elapsed_time!) 
      @last_printed_iteration = iteration
      @last_print_time = current_time
    end
def increment!
      @iteration += 1

      return unless (iteration - last_printed_iteration) >= @min_iterations
      # We check the counter first, to reduce the overhead of Time.now
      return unless (current_time! - last_print_time) >= @min_interval
      return if iteration == total && !@leave

      printer.status(iteration, elapsed_time!) 
      @last_printed_iteration = iteration
      @last_print_time = current_time
    end
Called everytime the textual progress bar might need to be updated (i.e. on
 every iteration). We still check whether the update is appropriate to print to
 the progress bar before doing so, according to the `:min_iters` and `:min_interval`
 options.

 @see #initialize