(if (typep stream 'file-simple-stream)
(with-stream-class (file-simple-stream stream)
(setf (sm pathname stream) new-name)
- (setf (sm filename stream) (sb-int:unix-namestring new-name nil))
+ (setf (sm filename stream) (%file-namestring new-name))
t)
nil))
eof-error-p
stream t)))
((or (eq char stream)
- (not (sb-impl::whitespacep char)))
+ (not (sb-impl::whitespace[2]p char)))
(unless (eq char stream)
(funcall-stm-handler j-unread-char encap t))
(if (eq char stream) eof-value char))))
(funcall-stm-handler j-listen (sm melded-stream stream))
(or (< (sm buffpos stream) (sm buffer-ptr stream))
;; Attempt buffer refill
- (let ((lcrs (sm last-char-read-size stream)))
- (when (and (not (any-stream-instance-flags stream :dual :string))
- (>= (sm mode stream) 0))
- ;; single-channel stream dirty -> write data before reading
- (flush-buffer stream nil))
- (>= (refill-buffer stream nil) width))))))
+ (when (and (not (any-stream-instance-flags stream :dual :string))
+ (>= (sm mode stream) 0))
+ ;; single-channel stream dirty -> write data before reading
+ (flush-buffer stream nil))
+ (>= (refill-buffer stream nil) width)))))
(defun %clear-input (stream buffer-only)
(declare (type simple-stream stream))
(index (or start 0) (1+ index))
(end (or end (* (length vector) (vector-elt-width vector))))
(endian-swap (endian-swap-value vector endian-swap))
- (byte (read-byte-internal encap nil nil t)
- (read-byte-internal encap nil nil nil)))
- ((or (null byte) (>= index end)) index)
- (setf (bref vector (logxor index endian-swap)) byte))))))
+ (flag t nil))
+ ((>= index end) index)
+ (let ((byte (read-byte-internal encap nil nil flag)))
+ (unless byte
+ (return index))
+ (setf (bref vector (logxor index endian-swap)) byte)))))))
((or ansi-stream fundamental-stream)
(unless (typep vector '(or string
(simple-array (signed-byte 8) (*))
(remf options :input-handle)
(remf options :output-handle)
(make-instance class :lisp-stream
- (apply #'open-fd-stream filespec options))))))
+ (apply #'open-fd-stream filespec options)))
+ (t (error "Don't know how to handle the stream class ~A"
+ (etypecase class
+ (symbol (find-class class t))
+ (class class)))))))
(declaim (inline read-byte read-char read-char-no-hang unread-char))
(defun read-char-no-hang (&optional (stream *standard-input*) (eof-error-p t)
eof-value recursive-p)
"Returns the next character from the Stream if one is availible, or nil."
- (declare (ignore recursive-p))
(let ((stream (sb-impl::in-synonym-of stream)))
(etypecase stream
(simple-stream
((eq peek-type t)
(do ((char (sb-gray:stream-read-char stream)
(sb-gray:stream-read-char stream)))
- ((or (eq char :eof) (not (sb-impl::whitespacep char)))
+ ((or (eq char :eof) (not (sb-impl::whitespace[2]p char)))
(cond ((eq char :eof)
(sb-impl::eof-or-lose stream eof-error-p eof-value))
(t
(cond (new-name
(setf (sb-impl::fd-stream-pathname stream) new-name)
(setf (sb-impl::fd-stream-file stream)
- (sb-int:unix-namestring new-name nil))
+ (%file-namestring new-name))
t)
(t
(sb-impl::fd-stream-pathname stream))))))