CharacterEncoderImplementations__ISO10646_to_UTF8_MAC.st
changeset 22414 8a15c1e6c4a8
parent 21593 bdcb1244b97d
child 22475 71b77246e002
--- a/CharacterEncoderImplementations__ISO10646_to_UTF8_MAC.st	Wed Jan 10 23:00:16 2018 +0100
+++ b/CharacterEncoderImplementations__ISO10646_to_UTF8_MAC.st	Wed Jan 10 23:00:57 2018 +0100
@@ -312,6 +312,22 @@
     ].
 
     "Created: / 16-02-2017 / 17:33:04 / stefan"
+!
+
+readNextCharacterFrom:aStream 
+    |firstByte bytesToRead str|
+
+    firstByte := aStream peek. 
+    firstByte ifNil:[^ nil].
+    firstByte := firstByte codePoint.
+    bytesToRead := self class bytesToReadFor:firstByte.
+    str := self decodeString:(aStream next:bytesToRead).
+    str size ~~ 1 ifTrue:[
+        DecodingError raiseRequestErrorString:' - bad UTF8_MAC encoding'.
+    ].
+    ^ str first
+
+    "Created: / 10-01-2018 / 22:35:23 / stefan"
 ! !
 
 !ISO10646_to_UTF8_MAC methodsFor:'queries'!