'From Pharo1.3a of ''18 January 2011'' [Latest update: #13226] on 29 May 2011 at 11:09:34 am'! ReadWriteStream subclass: #FileStream instanceVariableNames: 'rwmode ' classVariableNames: 'EncodeAndDecodeStdioFiles Stderr Stdin StdioFiles Stdout TheStdioHandles ' poolDictionaries: '' category: 'Files-Kernel'! !FileStream class methodsFor: 'initialize-release' stamp: 'MarcusDenker 5/29/2011 11:07'! initialize TheStdioHandles := Array new: 3. "original comment was: the intent being before: AutoStart" Smalltalk addToStartUpList: self after: FileDirectory; addToShutDownList: self after: FileDirectory! ! !FileStream class methodsFor: 'stdio' stamp: 'MarcusDenker 5/29/2011 11:09'! standardIOStreamNamed: moniker forWrite: forWrite "Create if necessary and store default stdin, stdout and other files based on the their names" | index | index := #(stdin stdout stderr) identityIndexOf: moniker. ^((StdioFiles ifNil: [ StdioFiles := Array new: 3 ]) at: index) ifNil: [ StdioFiles at: index put: ( (TheStdioHandles at: index) ifNil: [ ^self error: moniker, ' is unavailable' ] ifNotNil: [ :handle | self MultiByteFileStream newForStdio openOnHandle: handle name: moniker forWrite: forWrite ]) ] ! ! FileStream class removeSelector: #encodeAndDecodeStdioFiles! FileStream class removeSelector: #encodeAndDecodeStdioFiles:! FileStream initialize! FileStream class removeSelector: #stdioSettingOn:! FileStream class removeSelector: #stdioStreamClass! FileStream class removeSelector: #updateStdioFiles! ReadWriteStream subclass: #FileStream instanceVariableNames: 'rwmode' classVariableNames: 'Stderr Stdin StdioFiles Stdout TheStdioHandles' poolDictionaries: '' category: 'Files-Kernel'!