<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi Levente --<div class="mb_sig"></div>
                                        <div><br></div><div>><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Can you should me an example where these backstops actually make a </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">difference?</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">No, I can't. I was wondering why people would explicitly write </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">MultiByteFileStream in the first place, which is bad style. I figured maybe because of that protocol. Actually, StandardFileStream should support #lineEndConvention (etc.), too. Then we could remove/replace the extension.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">This is mere documentation in the Multilingual package that says: 'Trust me, I integrated myself into the system. Just use FileStream and I will come along when needed.' :-) Something like that.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Should I remove it again? Seems wrong. For example, take a look at Workspace >> #saveContents:onFileNamed:accessMode:. There, it reads:</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">... fileStream </span><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">lineEndConvention: ...</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">There is no need to expose the multi-byte nature of the file stream in current systems. Yet, I would not feel comfortable writing that without having #lineEndConvention: present in FileStream.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Does this somehow make sense? Information hiding. Abstraction. That kind of thing. :-)</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Best,</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Marcel</span></div><blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 27.11.2021 09:30:36 schrieb Levente Uzonyi <leves@caesar.elte.hu>:</p><div style="font-family:Arial,Helvetica,sans-serif">Hi Marcel,<br><br>Can you should me an example where these backstops actually make a <br>difference?<br><br><br>Levente<br><br>On Thu, 25 Nov 2021, commits@source.squeak.org wrote:<br><br>> Marcel Taeumel uploaded a new version of Multilingual to project The Trunk:<br>> http://source.squeak.org/trunk/Multilingual-mt.259.mcz<br>><br>> ==================== Summary ====================<br>><br>> Name: Multilingual-mt.259<br>> Author: mt<br>> Time: 25 November 2021, 11:28:53.961354 am<br>> UUID: 6e1246cc-66e2-9140-9e22-49ba1ebad024<br>> Ancestors: Multilingual-ul.258<br>><br>> Adds some backstops to FileStream to avoid having to name "MultiByteFileStream" explicitely in your code. Just use "FileStream fileNamed:do:" etc. and rely on polymorphism.<br>><br>> =============== Diff against Multilingual-ul.258 ===============<br>><br>> Item was added:<br>> + ----- Method: FileStream>>detectLineEndConvention (in category '*Multilingual-accessing') -----<br>> + detectLineEndConvention<br>> +     "Backstop. See MultiByteFileStream."<br>> + <br>> +         ^ nil!<br>><br>> Item was added:<br>> + ----- Method: FileStream>>lineEndConvention (in category '*Multilingual-accessing') -----<br>> + lineEndConvention<br>> +    "See MultiByteFileStream and also String >> #withSqueakLineEndings."<br>> + <br>> +   ^ #cr!<br>><br>> Item was added:<br>> + ----- Method: FileStream>>lineEndConvention: (in category '*Multilingual-accessing') -----<br>> + lineEndConvention: aSymbolOrNil<br>> +     "Ignore here. See MultiByteFileStream."!<br>><br>> Item was added:<br>> + ----- Method: FileStream>>setConverterForCode (in category '*Multilingual-accessing') -----<br>> + setConverterForCode<br>> +    "Backstop. See MultiByteFileStream."!<br>><br>> Item was added:<br>> + ----- Method: FileStream>>wantsLineEndConversion: (in category '*Multilingual-accessing') -----<br>> + wantsLineEndConversion: aBoolean<br>> +      "Backstop. See MultiByteFileStream."!<br>><br>> Item was changed:<br>>  ----- Method: MultiByteFileStream>>lineEndConvention: (in category 'accessing') -----<br>>  lineEndConvention: aSymbol<br>> +      "#cr, #lf, #crlf"<br>> + <br>> -<br>>      (lineEndConvention := aSymbol) ifNotNil: [wantsLineEndConversion := true].<br>>        self installLineEndConventionInConverter!<br><br></div></blockquote></div>