def read_more(size)
      return if @parser.finished?

      value = @socket.readpartial(size, @buffer)
      if value == :eof
        @parser << ""
        :eof
      elsif value
        @parser << value
      end
    rescue IOError, SocketError, SystemCallError => ex
      raise ConnectionError, "error reading from socket: #{ex}", ex.backtrace
    end
def read_more(size)
      return if @parser.finished?

      value = @socket.readpartial(size, @buffer)
      if value == :eof
        @parser << ""
        :eof
      elsif value
        @parser << value
      end
    rescue IOError, SocketError, SystemCallError => ex
      raise ConnectionError, "error reading from socket: #{ex}", ex.backtrace
    end
Feeds some more data into parser
 @return [void]