Sha256: 74f7b89dd0caa659c08043ad56c280c54bbf2ebd142ff24a91fc686f3d568f09

Contents?: true

Size: 479 Bytes

Versions: 1

Compression:

Stored size: 479 Bytes

Contents

module IOStreams
  module Bzip2
    class Reader < IOStreams::Reader
      # Read from a Bzip2 stream, decompressing the contents as it is read
      def self.stream(input_stream, **args)
        unless defined?(::Bzip2::FFI)
          Utils.load_soft_dependency("bzip2-ffi", "Bzip2", "bzip2/ffi")
        end

        begin
          io = ::Bzip2::FFI::Reader.new(input_stream, args)
          yield io
        ensure
          io&.close
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
iostreams-1.4.0 lib/io_streams/bzip2/reader.rb