# File lib/archive/support/zlib.rb, line 34
    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