# File lib/archive/zip.rb, line 133
    def initialize(archive, mode = :r)
      @archive = archive
      mode = mode.to_sym
      if mode == :r || mode == :w then
        @mode = mode
      else
        raise ArgumentError, "illegal access mode #{mode}"
      end

      @close_delegate = false
      if @archive.kind_of?(String) then
        @close_delegate = true
        if mode == :r then
          @archive = File.open(@archive, 'rb')
        else
          @archive = File.open(@archive, 'wb')
        end
      end
      @entries = []
      @comment = ''
      @closed = false
    end