[Newbies] closing WriteStream?

Mr. Timothy C. Johnson tjohnson at iwu.edu
Wed Nov 26 18:10:10 UTC 2008


Bert Freudenberg wrote:

>> Do I need to worry about closing a WriteStream?  Currently I am  
>> working
>> like this:
>>
>> buildStatementFor: anObject
>> | statement |
>> statement := String new writeStream.
>> [
>> statement nextPutAll: 'bla bla bla'.
>> ^ statement contents.
>> ] ensure: statement close
>>
>
>Not for an in-memory write stream no.
>
>Note you're missing the block brackets around [statement close].
>
>Also, since this is such a common task, the shorter version is
>
>buildStatementFor: anObject
>
>	^String streamContents: [:statement | statement nextPutAll: 'bla bla  
>bla']
>
>Take a look at #streamContents: which does exactly the same as your  
>code, but you can never get it wrong again ;)

Hi Bert,

Thanks.  Actually that was (of course!) just an off-the-cuff pseudocode 
I posted and not a copy-and-paste.  My email client does not have a 
syntax checker, unfortunately :)

#streamContents: indeed seems to be what I need.

- TimJ




More information about the Beginners mailing list