# File lib/logging/appenders/io.rb, line 30
    def initialize( name, io, opts = {} )
      unless io.respond_to? :syswrite
        raise TypeError, "expecting an IO object but got '#{io.class.name}'"
      end

      @io = io
      @io.sync = true if io.respond_to? :sync=    # syswrite complains if the IO stream is buffered
      @io.flush rescue nil                        # syswrite also complains if in unbuffered mode and buffer isn't empty
      @close_method = :close

      super(name, opts)
      configure_buffering(opts)
    end