Interval.st
changeset 44 b262907c93ea
parent 39 bcf183a31bbb
child 54 06dbdeeed4f9
--- 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"