def each_chunk
      yield(header_chunk)
      other_chunks.each { |chunk| yield(chunk) }
      yield(palette_chunk)      if palette_chunk
      yield(transparency_chunk) if transparency_chunk
      yield(physical_chunk)     if physical_chunk
      data_chunks.each { |chunk| yield(chunk) }
      yield(end_chunk)
    end
def each_chunk
      yield(header_chunk)
      other_chunks.each { |chunk| yield(chunk) }
      yield(palette_chunk)      if palette_chunk
      yield(transparency_chunk) if transparency_chunk
      yield(physical_chunk)     if physical_chunk
      data_chunks.each { |chunk| yield(chunk) }
      yield(end_chunk)
    end
CHUNKS

 Enumerates the chunks in this datastream.

 This will iterate over the chunks using the order in which the chunks
 should appear in the PNG file.

 @yield [chunk] Yields the chunks in this datastream, one by one in the correct order.
 @yieldparam [ChunkyPNG::Chunk::Base] chunk A chunk in this datastream.
 @see ChunkyPNG::Datastream#chunks