--- a/PositionableStream.st Mon Mar 03 13:18:53 2014 +0100
+++ b/PositionableStream.st Tue Mar 04 13:36:39 2014 +0100
@@ -558,6 +558,34 @@
"
! !
+!PositionableStream methodsFor:'queries'!
+
+endsWith:aSequenceableCollection
+ "answer true, if the elements in aSequenceableCollection
+ form the end of the stream."
+
+ self contentsSpecies == collection class ifTrue:[
+ |sz|
+
+ sz := aSequenceableCollection size.
+ position < sz ifTrue:[
+ ^ false.
+ ].
+ ^ collection sameContentsFrom:position+1-sz to:position as:aSequenceableCollection startingAt:1.
+ ].
+ ^ self contents endsWith:aSequenceableCollection
+
+ "
+ ('' writeStream nextPutAll:'Hello World') endsWith:'World'
+ ('' writeStream nextPutAll:'Hello World') endsWith:'Hello World'
+ ('' writeStream nextPutAll:'Hello World') endsWith:'xHello World'
+ ('' writeStream nextPutAll:'Hello World') endsWith:'Bla'
+ ('' writeStream) endsWith:'Bla'
+ ('' writeStream) endsWith:''
+ '' endsWith:''
+ "
+! !
+
!PositionableStream methodsFor:'reading'!
nextAvailable:count
@@ -720,11 +748,11 @@
!PositionableStream class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/PositionableStream.st,v 1.164 2014-03-01 22:33:23 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/PositionableStream.st,v 1.165 2014-03-04 12:36:39 stefan Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libbasic/PositionableStream.st,v 1.164 2014-03-01 22:33:23 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/PositionableStream.st,v 1.165 2014-03-04 12:36:39 stefan Exp $'
! !