# File lib/archive/support/zlib.rb, line 31 def self.open(delegate, level = nil, window_bits = nil, mem_level = nil, strategy = nil) zw = new(delegate, level, window_bits, mem_level, strategy) return zw unless block_given? begin yield(zw) ensure zw.close unless zw.closed? end end