class: ReadWriteStream
authorClaus Gittinger <cg@exept.de>
Wed, 25 Feb 2015 15:13:12 +0100
changeset 17558 4a044bdacd7c
parent 17557 6726d49ecf7b
child 17559 010577abda05
class: ReadWriteStream comment/format in: #documentation
ReadWriteStream.st
--- a/ReadWriteStream.st	Wed Feb 25 15:12:46 2015 +0100
+++ b/ReadWriteStream.st	Wed Feb 25 15:13:12 2015 +0100
@@ -11,6 +11,8 @@
 "
 "{ Package: 'stx:libbasic' }"
 
+"{ NameSpace: Smalltalk }"
+
 WriteStream subclass:#ReadWriteStream
 	instanceVariableNames:''
 	classVariableNames:''
@@ -41,6 +43,11 @@
     (being one of the seldom places, where multiple inheritance could be
      of good use in smalltalk).
 
+    [caveat:]
+        Basing capabilities like readability/writability/positionability/peekability on inheritance makes
+        the class hierarchy ugly and leads to strange and hard to teach redefinitions (aka. NonPositionableStream
+        below PositionableStream or ExternalReadStream under WriteStream)
+
     Claus:
         I personally find the ReadStream - WriteStream - ReadWriteStream
         organization brain-damaged. It would be better to have an attribute
@@ -189,10 +196,10 @@
 !ReadWriteStream class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ReadWriteStream.st,v 1.36 2014-12-23 15:39:03 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ReadWriteStream.st,v 1.37 2015-02-25 14:13:12 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/ReadWriteStream.st,v 1.36 2014-12-23 15:39:03 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ReadWriteStream.st,v 1.37 2015-02-25 14:13:12 cg Exp $'
 ! !