--- a/Interval.st Sun Jan 16 04:38:33 1994 +0100
+++ b/Interval.st Sun Jan 16 04:47:41 1994 +0100
@@ -27,7 +27,7 @@
For example, the interval (1 to:5) containes the elements (1 2 3 4 5) and
(1 to:6 by:2) contains (1 3 5).
-$Header: /cvs/stx/stx/libbasic/Interval.st,v 1.5 1994-01-09 21:17:28 claus Exp $
+$Header: /cvs/stx/stx/libbasic/Interval.st,v 1.6 1994-01-16 03:41:50 claus Exp $
written summer 89 by claus
'!
@@ -176,15 +176,33 @@
"return a string for storing"
step = 1 ifTrue:[
- ^ start storeString , ' to:' , stop storeString
+ ^ '(' , start storeString , ' to:' , stop storeString , ')'
].
- ^ start storeString , ' to:' , stop storeString , ' by:' , step storeString
+ ^ '(' , start storeString , ' to:' , stop storeString , ' by:' , step storeString , ')'
"(1 to:10) storeString"
"(1 to:10 by:2) storeString"
!
+printOn:aStream
+ "append a printed representation to aStream"
+
+ start printOn:aStream.
+ aStream nextPutAll:' to:'.
+ stop printOn:aStream.
+ step ~= 1 ifTrue:[
+ aStream nextPutAll:' by:'.
+ step printOn:aStream.
+ ].
+
+ "(1 to:10) printOn:Transcript"
+ "(1 to:10 by:2) printOn:Stdout"
+!
+
storeOn:aStream
+ "store a representation which can reconstruct the receiver to aStream"
+
+ aStream nextPut:$(.
start storeOn:aStream.
aStream nextPutAll:' to:'.
stop storeOn:aStream.
@@ -192,6 +210,7 @@
aStream nextPutAll:' by:'.
step storeOn:aStream.
].
+ aStream nextPut:$).
"(1 to:10) storeOn:Transcript"
"(1 to:10 by:2) storeOn:Transcript"