X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fgray-streams-class.lisp;h=c0051a1faa67e1bf0fef61ed9b19c61eae7c3d75;hb=d0f65b07a30adc989e36a82ddc0ed54d135d638e;hp=ac627fcb52febaebdeb4cc968ad70c8dcffa4419;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/pcl/gray-streams-class.lisp b/src/pcl/gray-streams-class.lisp index ac627fc..c0051a1 100644 --- a/src/pcl/gray-streams-class.lisp +++ b/src/pcl/gray-streams-class.lisp @@ -9,44 +9,62 @@ ;;;; warranty. See the COPYING and CREDITS files for more information. (in-package "SB-GRAY") - -(sb-int:file-comment - "$Header$") ;;; Bootstrap the FUNDAMENTAL-STREAM class. (let ((sb-pcl::*pcl-class-boot* 'fundamental-stream)) (defclass fundamental-stream (standard-object stream) - () + ((open-p :initform t + :accessor stream-open-p)) #+sb-doc - (:documentation "the base class for all CLOS streams"))) + (:documentation "the base class for all Gray streams"))) ;;; Define the stream classes. -(defclass fundamental-input-stream (fundamental-stream)) +(defclass fundamental-input-stream (fundamental-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray input streams")) -(defclass fundamental-output-stream (fundamental-stream)) +(defclass fundamental-output-stream (fundamental-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray output streams")) -(defclass fundamental-character-stream (fundamental-stream)) +(defclass fundamental-character-stream (fundamental-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray streams whose element-type is a subtype of character")) -(defclass fundamental-binary-stream (fundamental-stream)) +(defclass fundamental-binary-stream (fundamental-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray streams whose element-type is a subtype of unsigned-byte or signed-byte")) (defclass fundamental-character-input-stream - (fundamental-input-stream fundamental-character-stream)) + (fundamental-input-stream fundamental-character-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray input streams whose element-type is a subtype of character")) (defclass fundamental-character-output-stream - (fundamental-output-stream fundamental-character-stream)) + (fundamental-output-stream fundamental-character-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray output streams whose element-type is a subtype of character")) (defclass fundamental-binary-input-stream - (fundamental-input-stream fundamental-binary-stream)) + (fundamental-input-stream fundamental-binary-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray input streams whose element-type is a subtype of unsigned-byte or signed-byte")) (defclass fundamental-binary-output-stream - (fundamental-output-stream fundamental-binary-stream)) + (fundamental-output-stream fundamental-binary-stream) nil + #+sb-doc + (:documentation "a superclass of all Gray output streams whose element-type is a subtype of unsigned-byte or signed-byte")) +;;; This is not in the Gray stream proposal, so it is left here +;;; as example code. +;;; ;;; example character input and output streams - +#| (defclass character-output-stream (fundamental-character-output-stream) ((lisp-stream :initarg :lisp-stream - :accessor character-output-stream-lisp-stream))) + :accessor character-output-stream-lisp-stream))) (defclass character-input-stream (fundamental-character-input-stream) ((lisp-stream :initarg :lisp-stream - :accessor character-input-stream-lisp-stream))) + :accessor character-input-stream-lisp-stream))) +|#