# File lib_core/rucy/response.rb, line 62
    def parse_line(input)
      for line in input
        line.chomp!("\n")
        line.chomp!("\r")
        next if line.empty?

        version, status, reason = line.split(/\s+/, 3)
        if (version.nil? || version.empty?) then
          raise ParseError, "failed to parse a status line: #{line.inspect}"
        end
        if (status.nil? || status.empty?) then
          raise ParseError, "failed to parse a status line: #{line.inspect}"
        end
        if (reason.nil? || reason.empty?) then
          raise ParseError, "failed to parse a status line: #{line.inspect}"
        end

        if (version =~ %"^HTTP/\d+\.\d+$") then
          @version = version
        else
          raise ParseError, "invalid HTTP version format: #{line.inspect}"
        end
        if (status =~ /^\d\d\d$/) then
          @status = status.to_i
        else
          raise ParseError, "invalid status code format: #{line.inspect}"
        end
        @reason = reason

        break
      end

      nil
    end