# File lib/aws/s3/paginated_collection.rb, line 31 def each_page(options = {}, &block) opts = list_options(options) limit = options[:limit] batch_size = options[:batch_size] || 1000 markers = {} received = 0 loop do page_opts = opts.dup page_opts.merge!(markers) page_opts[limit_param] = limit ? [limit - received, batch_size].min : batch_size page = list_request(page_opts) markers = next_markers(page) received += page_size(page) yield(page) return unless page.truncated? end end