Sha256: 5287ae0b442b7c5a517d2ef9ec0020de7922a6047108c6b6d62953b39dabbd96

Contents?: true

Size: 545 Bytes

Versions: 8

Compression:

Stored size: 545 Bytes

Contents

class ZipTricks::Streamer::DeflatedWriter
  def initialize(io)
    @io = io
    @uncompressed_size = 0
    @started_at = @io.tell
    @crc = ZipTricks::StreamCRC32.new
    @bytes_since_last_flush = 0
  end

  def finish
    ZipTricks::BlockDeflate.write_terminator(@io)
    [@crc.to_i, @io.tell - @started_at, @uncompressed_size]
  end
  
  def <<(data)
    @uncompressed_size += data.bytesize
    @io << ZipTricks::BlockDeflate.deflate_chunk(data)
    @crc << data
    self
  end

  def write(data)
    self << data
    data.bytesize
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
zip_tricks-4.2.2 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-4.2.1 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-4.2.0 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-4.1.0 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-4.0.0 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-3.1.1 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-3.1.0 lib/zip_tricks/streamer/deflated_writer.rb
zip_tricks-3.0.0 lib/zip_tricks/streamer/deflated_writer.rb