0.9.1.38:
[sbcl.git] / src / pcl / gray-streams.lisp
index fbf769a..2b0cc85 100644 (file)
   
   (defmethod input-stream-p ((stream ansi-stream))
     (ansi-stream-input-stream-p stream))
-  
+
+  (defmethod input-stream-p ((stream fundamental-stream))
+    nil)
+
   (defmethod input-stream-p ((stream fundamental-input-stream))
     t)
 
   (defmethod output-stream-p ((stream ansi-stream))
     (ansi-stream-output-stream-p stream))
 
+  (defmethod output-stream-p ((stream fundamental-stream))
+    nil)
+  
   (defmethod output-stream-p ((stream fundamental-output-stream))
     t)
 
    "Used by READ-BYTE; returns either an integer, or the symbol :EOF
   if the stream is at end-of-file."))
 
+(defmethod stream-read-byte ((stream stream))
+  (bug-or-error stream 'stream-read-byte))
+(defmethod stream-read-byte ((non-stream t))
+  (error 'type-error :datum non-stream :expected-type 'stream))
+
 (defgeneric stream-write-byte (stream integer)
   #+sb-doc
   (:documentation
    "Implements WRITE-BYTE; writes the integer to the stream and
   returns the integer as the result."))
 
+(defmethod stream-write-byte ((stream stream) integer)
+  (bug-or-error stream 'stream-write-byte))
+(defmethod stream-write-byte ((non-stream t) integer)
+  (error 'type-error :datum non-stream :expected-type 'stream))
+
 ;; Provide a reasonable default for binary Gray streams.  We might be
 ;; able to do better by specializing on the sequence type, but at
 ;; least the behaviour is reasonable. --tony 2003/05/08.