--- a/Filename.st Wed Nov 28 10:22:05 2012 +0000
+++ b/Filename.st Fri Nov 30 17:19:23 2012 +0000
@@ -12,11 +12,11 @@
"{ Package: 'stx:libbasic' }"
Object subclass:#Filename
- instanceVariableNames:'nameString'
- classVariableNames:'NextTempFilenameIndex TempDirectory DefaultTempDirectory
- ConcreteClass'
- poolDictionaries:''
- category:'System-Support'
+ instanceVariableNames:'nameString'
+ classVariableNames:'NextTempFilenameIndex TempDirectory DefaultTempDirectory
+ ConcreteClass'
+ poolDictionaries:''
+ category:'System-Support'
!
!Filename class methodsFor:'documentation'!
@@ -5819,6 +5819,32 @@
!Filename methodsFor:'writing-files'!
+appendingFileDo:aBlock
+ "create a append-stream on the receiver file, evaluate aBlock, passing that stream as arg,
+ and return the blocks value.
+ If the file cannot be opened, an exception is raised.
+ Ensures that the stream is closed."
+
+ |stream result|
+
+ stream := self appendStream.
+ [
+ result := aBlock value:stream
+ ] ensure:[
+ stream close
+ ].
+ ^ result
+
+ "
+ 'ttt' asFilename appendingFileDo:[:s |
+ s nextPutLine:'hello'.
+ s nextPutLine:'world'.
+ ]
+ "
+
+ "Created: / 09-11-2012 / 10:07:41 / sr"
+!
+
contents:aStringOrCollectionOfLines
"create (or overwrite) a file given its contents as a collection of lines.
Raises an error, if the file is unwritable."
@@ -5875,15 +5901,15 @@
!Filename class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Filename.st,v 1.379 2012/10/27 17:44:35 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Filename.st,v 1.381 2012/11/09 09:08:52 sr Exp $'
!
version_CVS
- ^ '§Header: /cvs/stx/stx/libbasic/Filename.st,v 1.379 2012/10/27 17:44:35 cg Exp §'
+ ^ '§Header: /cvs/stx/stx/libbasic/Filename.st,v 1.381 2012/11/09 09:08:52 sr Exp §'
!
version_SVN
- ^ '$Id: Filename.st 10858 2012-10-29 22:07:56Z vranyj1 $'
+ ^ '$Id: Filename.st 10876 2012-11-30 17:19:23Z vranyj1 $'
! !
Filename initialize!