CharacterEncoder.st
changeset 8087 0a2ee76bcf55
parent 8062 4a229fcbc220
child 8101 f7023a4735bf
--- 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!