class Aws::Resources::Collection
def [](index)
- Api:   -  private 
Deprecated:
def [](index) if @size @batches[0][index] else raise "unabled to index into a lazy loaded collection" end end
def batch_enum
def batch_enum case @limit when 0 then [] when nil then non_empty_batches else limited_batches end end
def batches
- Api:   -  private 
Deprecated:
def batches Enumerator.new do |y| batch_enum.each do |batch| y << self.class.new([batch], size: batch.size) end end end
def each(&block)
- 
        (Enumerator-) 
def each(&block) enum = Enumerator.new do |y| batch_enum.each do |batch| batch.each do |band| y.yield(band) end end end enum.each(&block) if block enum end
def first(count = nil)
- 
        (Resource, Collection)-
Parameters:
- 
        count(Integer) --
def first(count = nil) if count items = limit(count).to_a self.class.new([items], size: items.size) else begin each.next rescue StopIteration nil end end end
def initialize(batches, options = {})
- Api:   -  private 
Options Hash:
(**options)- 
        :size(Integer) --
- 
        :limit(Integer) --
Parameters:
- 
        batches(Enumerator) --
def initialize(batches, options = {}) @batches = batches @limit = options[:limit] @size = options[:size] end
def limit(limit)
- 
        limit(Integer) --
Returns:
- 
        (Collection)-
def limit(limit) Collection.new(@batches, limit: limit) end
def limited_batches
def limited_batches Enumerator.new do |y| yielded = 0 @batches.each do |batch| batch = batch.take(@limit - yielded) if batch.size > 0 y.yield(batch) yielded += batch.size end break if yielded == @limit end end end
def non_empty_batches
def non_empty_batches Enumerator.new do |y| @batches.each do |batch| y.yield(batch) if batch.size > 0 end end end
def size
- 
        (Integer, nil)-
def size @size end