X Tutup
Skip to content

Commit 2908a8f

Browse files
author
Johan Brichau
committed
Implementation of readFileStream and writeFileStream on GRPlatform for Pharo9
1 parent cafef9b commit 2908a8f

File tree

8 files changed

+30
-26
lines changed

8 files changed

+30
-26
lines changed
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
file library
22
fileStreamOn: aString do: aBlock binary: aBoolean
3-
self subclassResponsibility
3+
self
4+
greaseDeprecatedApi: 'GRPlatform>>#fileStreamOn:do:binary:'
5+
details: 'Use readFileStreamOn:do:binary:'.
6+
^ self readFileStreamOn: aString do: aBlock binary: aBoolean
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file library
2+
readFileStreamOn: aString do: aBlock binary: aBoolean
3+
self subclassResponsibility
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
file library
2+
writeFileStreamOn: aString do: aBlock binary: aBoolean
3+
self subclassResponsibility
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
file library
22
contentsOfFile: aString binary: aBoolean
3-
^ self fileStreamOn: aString do: [ :stream | stream contents ] binary: aBoolean
3+
^ self readFileStreamOn: aString do: [ :stream | stream contents ] binary: aBoolean

repository/Grease-Pharo90-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
file library
2+
readFileStreamOn: aString do: aBlock binary: aBoolean
3+
"Line end conversion is no longer done for ascii... TBD!"
4+
5+
^ aBoolean
6+
ifTrue: [ aString asFileReference binaryReadStreamDo: aBlock ]
7+
ifFalse: [ aString asFileReference readStreamEncoded: 'ascii' do: aBlock ]
Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,11 @@
11
file library
22
write: aStringOrByteArray toFile: aFileNameString inFolder: aFolderString
33
"writes aStringOrByteArray to a file named aFilenameString in the folder aFolderString"
4-
| folder stream fullFilePath |
4+
5+
| folder |
56
folder := FileSystem disk resolveString: aFolderString.
6-
fullFilePath := (folder / aFileNameString) asFileReference.
7-
stream := aStringOrByteArray isString
8-
ifTrue: [
9-
(MultiByteFileStream forceNewFileNamed: fullFilePath fullName)
10-
ascii;
11-
wantsLineEndConversion: true;
12-
yourself ]
13-
ifFalse: [ (FileStream forceNewFileNamed: fullFilePath fullName) binary ].
14-
[ stream nextPutAll: aStringOrByteArray ]
15-
ensure: [ stream close ]
7+
"TODO: wantsLineEndConversion: true; ??"
8+
^ self
9+
writeFileStreamOn: (folder / aFileNameString) asFileReference ensureDelete fullName
10+
do: [ :stream | stream nextPutAll: aStringOrByteArray ]
11+
binary: aStringOrByteArray isString not
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
file library
2+
writeFileStreamOn: aString do: aBlock binary: aBoolean
3+
^ aBoolean
4+
ifTrue: [ aString asFileReference binaryWriteStreamDo: aBlock ]
5+
ifFalse: [ aString asFileReference writeStreamEncoded: 'ascii' do: aBlock ]

0 commit comments

Comments
 (0)
X Tutup