diff -r 0cf3051ad0c2 -r 0a2ee76bcf55 CharacterEncoder.st --- a/CharacterEncoder.st Fri Mar 05 18:51:35 2004 +0100 +++ b/CharacterEncoder.st Fri Mar 05 18:52:40 2004 +0100 @@ -640,6 +640,7 @@ self encoderFor:#'koi8-u' self encoderFor:#'jis0208' self encoderFor:#'jis7' + self encoderFor:#'utf8' " ! @@ -727,12 +728,12 @@ newEncoding := newEncodingArg ? #'unicode'. newEncoding == #'iso10646-1' ifTrue:[ newEncoding := #'unicode']. - oldEncoding == newEncoding ifTrue:[^ NullEncoder new]. - (oldEncoding match:newEncoding) ifTrue:[^ NullEncoder new]. + oldEncoding == newEncoding ifTrue:[^ CharacterEncoderImplementations::NullEncoder new]. + (oldEncoding match:newEncoding) ifTrue:[^ CharacterEncoderImplementations::NullEncoder new]. "/ (newEncoding match:oldEncoding) ifTrue:[^ NullEncoder new]. (oldEncoding == #unicode) ifTrue:[ - (newEncoding == #unicode) ifTrue:[^ NullEncoder new]. + (newEncoding == #unicode) ifTrue:[^ CharacterEncoderImplementations::NullEncoder new]. "/ unicode -> something ^ self encoderFor:newEncoding. @@ -740,7 +741,7 @@ (newEncoding == #unicode) ifTrue:[ "/ something -> unicode decoder := self encoderFor:oldEncoding. - ^ InverseEncoder new decoder:decoder. + ^ CharacterEncoderImplementations::InverseEncoder new decoder:decoder. ]. "/ look for a specialized encoder... @@ -750,7 +751,7 @@ encoderForDecodedCode := self encoderFor:(cls nameOfDecodedCode). (encoderForDecodedCode namesOfEncoding includes:newEncoding) ifTrue:[ - ^ InverseEncoder new decoder:cls new. + ^ CharacterEncoderImplementations::InverseEncoder new decoder:cls new. ] ]. (cls namesOfEncoding includes:newEncoding) ifTrue:[ @@ -770,18 +771,14 @@ "/ unicode -> something encoder := self encoderFor:newEncoding. - ^ CompoundEncoder new encoder:encoder decoder:decoder. + ^ CharacterEncoderImplementations::CompoundEncoder new encoder:encoder decoder:decoder. " CharacterEncoder encoderToEncodeFrom:#'latin1' into:#'jis7' - self encoderFor:#'arabic' - self encoderFor:#'ms-arabic' - self encoderFor:#'iso8859-5' - self encoderFor:#'koi8-r' - self encoderFor:#'koi8-u' - self encoderFor:#'jis0208' - self encoderFor:#'jis7' - self encoderFor:#'unicode' + CharacterEncoder encoderToEncodeFrom:'koi8-r' into:#'mac-cyrillic' + CharacterEncoder encoderToEncodeFrom:#'ms-arabic' into:#'mac-arabic' + CharacterEncoder encoderToEncodeFrom:#'iso8859-5' into:#'koi8-r' + CharacterEncoder encoderToEncodeFrom:#'koi8-r' into:#'koi8-u' " ! ! @@ -1158,10 +1155,6 @@ isAbstract ^ self == CharacterEncoder -! - -isSingleByteCode - self subclassResponsibility ! ! !CharacterEncoder methodsFor:'encoding & decoding'! @@ -1361,10 +1354,6 @@ isAbstract self == CharacterEncoder::SingleByteEncoder ifTrue:[^ true]. ^ super isAbstract -! - -isSingleByteCode - ^ true ! ! !CharacterEncoder::SingleByteEncoder methodsFor:'private'! @@ -1410,10 +1399,6 @@ isAbstract self == CharacterEncoder::TwoByteEncoder ifTrue:[^ true]. ^ super isAbstract -! - -isSingleByteCode - ^ false ! ! !CharacterEncoder::TwoByteEncoder methodsFor:'private'! @@ -1839,13 +1824,13 @@ " Encoding (unicode to utf8) ISO10646_to_UTF8 encodeString:'hello'. - ISO10646_to_UTF8 encodeString:'ÄÖÜ'. + ISO10646_to_UTF8 encodeString:'ÄÖÜ'. Decoding (utf8 to unicode): |t| - t := ISO10646_to_UTF8 encodeString:'ÄÖÜ'. + t := ISO10646_to_UTF8 encodeString:'ÄÖÜ'. ISO10646_to_UTF8 decodeString:t. " @@ -11479,7 +11464,7 @@ !CharacterEncoder::JIS0201 class methodsFor:'queries'! namesOfEncoding - ^ #( 'jis0201' ) + ^ #( 'jis0201' #'jisx0201.1976-0') ! ! !CharacterEncoder::JIS0201 methodsFor:'encoding & decoding'! @@ -11842,7 +11827,7 @@ !CharacterEncoder::JIS0208 class methodsFor:'queries'! namesOfEncoding - ^ #( 'jis0208' 'jisx0208' 'jisx0208.1983-0') + ^ #( 'jis0208' 'jisx0208' 'jisx0208.1983-0' 'jisx0208.1990-0') ! ! !CharacterEncoder::JIS0208 methodsFor:'encoding & decoding'! @@ -51661,7 +51646,7 @@ !CharacterEncoder class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoder.st,v 1.46 2004-03-04 09:36:59 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoder.st,v 1.47 2004-03-05 17:52:40 cg Exp $' ! ! CharacterEncoder initialize!