Function: QBOOK-SEMICOLON-READER

Source

(defun qbook-semicolon-reader (stream char)
  (declare (ignore char))
  (with-output-to-string (line)
    (loop
      for next-char = (read-char stream nil stream t)
      if (or (eq next-char stream)
             (char= next-char #\Newline))
        do (return)
      else
        do (write-char next-char line))))
Source Context