--- a/CharacterEncoderImplementations__MS_Cyrillic.st Thu Mar 31 20:21:44 2005 +0200
+++ b/CharacterEncoderImplementations__MS_Cyrillic.st Thu Mar 31 20:49:01 2005 +0200
@@ -35,12 +35,28 @@
other person. No title to or ownership of the software is
hereby transferred.
"
+!
+
+documentation
+"
+ CP1251 / Microsoft Cyrillic
+
+ [see with:]
+ CharacterEncoderImplementations::MS_Cyrillic showCharacterSet
+
+ [author:]
+ Claus Gittinger
+"
! !
!MS_Cyrillic class methodsFor:'mapping'!
mapFileURL2_relativePathName
^ 'CP1251'
+
+ "
+ self generateCode
+ "
!
mapping
@@ -315,8 +331,392 @@
"
! !
+!MS_Cyrillic methodsFor:'encoding & decoding'!
+
+decode:codeArg
+ "Automagically generated by generateCode - do not modify.
+ Decode from my encoding into unicode."
+
+ |code "{ Class: SmallInteger }"|
+
+ code := codeArg.
+ code <= 16r7F ifTrue:[ ^ code ].
+ code > 16rFF ifTrue:[
+ ^ self decodingError.
+ ].
+ [
+ |t|
+ t := #(
+ "16r0080" 16r0402 " CYRILLIC CAPITAL LETTER DJE (Serbocroatian) "
+ "16r0081" 16r0403 " CYRILLIC CAPITAL LETTER GJE "
+ "16r0082" 16r201A " SINGLE LOW-9 QUOTATION MARK "
+ "16r0083" 16r0453 " CYRILLIC SMALL LETTER GJE "
+ "16r0084" 16r201E " DOUBLE LOW-9 QUOTATION MARK "
+ "16r0085" 16r2026 " HORIZONTAL ELLIPSIS "
+ "16r0086" 16r2020 " DAGGER "
+ "16r0087" 16r2021 " DOUBLE DAGGER "
+ "16r0088" 16r0000 " invalid "
+ "16r0089" 16r2030 " PER MILLE SIGN "
+ "16r008A" 16r0409 " CYRILLIC CAPITAL LETTER LJE "
+ "16r008B" 16r2039 " SINGLE LEFT-POINTING ANGLE QUOTATION MARK "
+ "16r008C" 16r040A " CYRILLIC CAPITAL LETTER NJE "
+ "16r008D" 16r040C " CYRILLIC CAPITAL LETTER KJE "
+ "16r008E" 16r040B " CYRILLIC CAPITAL LETTER TSHE (Serbocroatian) "
+ "16r008F" 16r040F " CYRILLIC CAPITAL LETTER DZHE "
+ "16r0090" 16r0452 " CYRILLIC SMALL LETTER DJE (Serbocroatian) "
+ "16r0091" 16r2018 " LEFT SINGLE QUOTATION MARK "
+ "16r0092" 16r2019 " RIGHT SINGLE QUOTATION MARK "
+ "16r0093" 16r201C " LEFT DOUBLE QUOTATION MARK "
+ "16r0094" 16r201D " RIGHT DOUBLE QUOTATION MARK "
+ "16r0095" 16r2022 " BULLET "
+ "16r0096" 16r2013 " EN DASH "
+ "16r0097" 16r2014 " EM DASH "
+ "16r0098" 16r0000 " invalid "
+ "16r0099" 16r2122 " TRADE MARK SIGN "
+ "16r009A" 16r0459 " CYRILLIC SMALL LETTER LJE "
+ "16r009B" 16r203A " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK "
+ "16r009C" 16r045A " CYRILLIC SMALL LETTER NJE "
+ "16r009D" 16r045C " CYRILLIC SMALL LETTER KJE "
+ "16r009E" 16r045B " CYRILLIC SMALL LETTER TSHE (Serbocroatian) "
+ "16r009F" 16r045F " CYRILLIC SMALL LETTER DZHE "
+ "16r00A0" 16r00A0 " NO-BREAK SPACE "
+ "16r00A1" 16r040E " CYRILLIC CAPITAL LETTER SHORT U (Byelorussian) "
+ "16r00A2" 16r045E " CYRILLIC SMALL LETTER SHORT U (Byelorussian) "
+ "16r00A3" 16r0408 " CYRILLIC CAPITAL LETTER JE "
+ "16r00A4" 16r00A4 " CURRENCY SIGN "
+ "16r00A5" 16r0490 " CYRILLIC CAPITAL LETTER GHE WITH UPTURN "
+ "16r00A6" 16r00A6 " BROKEN BAR "
+ "16r00A7" 16r00A7 " SECTION SIGN "
+ "16r00A8" 16r0401 " CYRILLIC CAPITAL LETTER IO "
+ "16r00A9" 16r00A9 " COPYRIGHT SIGN "
+ "16r00AA" 16r0404 " CYRILLIC CAPITAL LETTER UKRAINIAN IE "
+ "16r00AB" 16r00AB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK "
+ "16r00AC" 16r00AC " NOT SIGN "
+ "16r00AD" 16r00AD " SOFT HYPHEN "
+ "16r00AE" 16r00AE " REGISTERED SIGN "
+ "16r00AF" 16r0407 " CYRILLIC CAPITAL LETTER YI (Ukrainian) "
+ "16r00B0" 16r00B0 " DEGREE SIGN "
+ "16r00B1" 16r00B1 " PLUS-MINUS SIGN "
+ "16r00B2" 16r0406 " CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "
+ "16r00B3" 16r0456 " CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "
+ "16r00B4" 16r0491 " CYRILLIC SMALL LETTER GHE WITH UPTURN "
+ "16r00B5" 16r00B5 " MICRO SIGN "
+ "16r00B6" 16r00B6 " PILCROW SIGN "
+ "16r00B7" 16r00B7 " MIDDLE DOT "
+ "16r00B8" 16r0451 " CYRILLIC SMALL LETTER IO "
+ "16r00B9" 16r2116 " NUMERO SIGN "
+ "16r00BA" 16r0454 " CYRILLIC SMALL LETTER UKRAINIAN IE "
+ "16r00BB" 16r00BB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "
+ "16r00BC" 16r0458 " CYRILLIC SMALL LETTER JE "
+ "16r00BD" 16r0405 " CYRILLIC CAPITAL LETTER DZE "
+ "16r00BE" 16r0455 " CYRILLIC SMALL LETTER DZE "
+ "16r00BF" 16r0457 " CYRILLIC SMALL LETTER YI (Ukrainian) "
+ "16r00C0" 16r0410 " CYRILLIC CAPITAL LETTER A "
+ "16r00C1" 16r0411 " CYRILLIC CAPITAL LETTER BE "
+ "16r00C2" 16r0412 " CYRILLIC CAPITAL LETTER VE "
+ "16r00C3" 16r0413 " CYRILLIC CAPITAL LETTER GHE "
+ "16r00C4" 16r0414 " CYRILLIC CAPITAL LETTER DE "
+ "16r00C5" 16r0415 " CYRILLIC CAPITAL LETTER IE "
+ "16r00C6" 16r0416 " CYRILLIC CAPITAL LETTER ZHE "
+ "16r00C7" 16r0417 " CYRILLIC CAPITAL LETTER ZE "
+ "16r00C8" 16r0418 " CYRILLIC CAPITAL LETTER I "
+ "16r00C9" 16r0419 " CYRILLIC CAPITAL LETTER SHORT I "
+ "16r00CA" 16r041A " CYRILLIC CAPITAL LETTER KA "
+ "16r00CB" 16r041B " CYRILLIC CAPITAL LETTER EL "
+ "16r00CC" 16r041C " CYRILLIC CAPITAL LETTER EM "
+ "16r00CD" 16r041D " CYRILLIC CAPITAL LETTER EN "
+ "16r00CE" 16r041E " CYRILLIC CAPITAL LETTER O "
+ "16r00CF" 16r041F " CYRILLIC CAPITAL LETTER PE "
+ "16r00D0" 16r0420 " CYRILLIC CAPITAL LETTER ER "
+ "16r00D1" 16r0421 " CYRILLIC CAPITAL LETTER ES "
+ "16r00D2" 16r0422 " CYRILLIC CAPITAL LETTER TE "
+ "16r00D3" 16r0423 " CYRILLIC CAPITAL LETTER U "
+ "16r00D4" 16r0424 " CYRILLIC CAPITAL LETTER EF "
+ "16r00D5" 16r0425 " CYRILLIC CAPITAL LETTER HA "
+ "16r00D6" 16r0426 " CYRILLIC CAPITAL LETTER TSE "
+ "16r00D7" 16r0427 " CYRILLIC CAPITAL LETTER CHE "
+ "16r00D8" 16r0428 " CYRILLIC CAPITAL LETTER SHA "
+ "16r00D9" 16r0429 " CYRILLIC CAPITAL LETTER SHCHA "
+ "16r00DA" 16r042A " CYRILLIC CAPITAL LETTER HARD SIGN "
+ "16r00DB" 16r042B " CYRILLIC CAPITAL LETTER YERU "
+ "16r00DC" 16r042C " CYRILLIC CAPITAL LETTER SOFT SIGN "
+ "16r00DD" 16r042D " CYRILLIC CAPITAL LETTER E "
+ "16r00DE" 16r042E " CYRILLIC CAPITAL LETTER YU "
+ "16r00DF" 16r042F " CYRILLIC CAPITAL LETTER YA "
+ "16r00E0" 16r0430 " CYRILLIC SMALL LETTER A "
+ "16r00E1" 16r0431 " CYRILLIC SMALL LETTER BE "
+ "16r00E2" 16r0432 " CYRILLIC SMALL LETTER VE "
+ "16r00E3" 16r0433 " CYRILLIC SMALL LETTER GHE "
+ "16r00E4" 16r0434 " CYRILLIC SMALL LETTER DE "
+ "16r00E5" 16r0435 " CYRILLIC SMALL LETTER IE "
+ "16r00E6" 16r0436 " CYRILLIC SMALL LETTER ZHE "
+ "16r00E7" 16r0437 " CYRILLIC SMALL LETTER ZE "
+ "16r00E8" 16r0438 " CYRILLIC SMALL LETTER I "
+ "16r00E9" 16r0439 " CYRILLIC SMALL LETTER SHORT I "
+ "16r00EA" 16r043A " CYRILLIC SMALL LETTER KA "
+ "16r00EB" 16r043B " CYRILLIC SMALL LETTER EL "
+ "16r00EC" 16r043C " CYRILLIC SMALL LETTER EM "
+ "16r00ED" 16r043D " CYRILLIC SMALL LETTER EN "
+ "16r00EE" 16r043E " CYRILLIC SMALL LETTER O "
+ "16r00EF" 16r043F " CYRILLIC SMALL LETTER PE "
+ "16r00F0" 16r0440 " CYRILLIC SMALL LETTER ER "
+ "16r00F1" 16r0441 " CYRILLIC SMALL LETTER ES "
+ "16r00F2" 16r0442 " CYRILLIC SMALL LETTER TE "
+ "16r00F3" 16r0443 " CYRILLIC SMALL LETTER U "
+ "16r00F4" 16r0444 " CYRILLIC SMALL LETTER EF "
+ "16r00F5" 16r0445 " CYRILLIC SMALL LETTER HA "
+ "16r00F6" 16r0446 " CYRILLIC SMALL LETTER TSE "
+ "16r00F7" 16r0447 " CYRILLIC SMALL LETTER CHE "
+ "16r00F8" 16r0448 " CYRILLIC SMALL LETTER SHA "
+ "16r00F9" 16r0449 " CYRILLIC SMALL LETTER SHCHA "
+ "16r00FA" 16r044A " CYRILLIC SMALL LETTER HARD SIGN "
+ "16r00FB" 16r044B " CYRILLIC SMALL LETTER YERU "
+ "16r00FC" 16r044C " CYRILLIC SMALL LETTER SOFT SIGN "
+ "16r00FD" 16r044D " CYRILLIC SMALL LETTER E "
+ "16r00FE" 16r044E " CYRILLIC SMALL LETTER YU "
+ "16r00FF" 16r044F " CYRILLIC SMALL LETTER YA "
+ ) at:(code - 16r7F).
+ t == 0 ifFalse:[^ t].
+ ^ self decodingError.
+ ] value.
+!
+
+encode:unicodeArg
+ "Automagically generated by generateCode - do not modify.
+ Encode from unicode into my encoding."
+
+ |unicode "{ Class: SmallInteger }"|
+
+ unicode := unicodeArg.
+ unicode <= 16r7F ifTrue:[ ^ unicode ].
+ unicode > 16r2122 ifTrue:[
+ ^ self encodingError.
+ ].
+ unicode <= 16r9F ifTrue:[
+ ^ self encodingError
+ ].
+ unicode <= 16r491 ifTrue:[
+ unicode <= 16rBB ifTrue:[
+ [
+ |t|
+ t := #[
+ "16r00A0" 16rA0 " NO-BREAK SPACE "
+ "16r00A1" 16r00 " invalid "
+ "16r00A2" 16r00 " invalid "
+ "16r00A3" 16r00 " invalid "
+ "16r00A4" 16rA4 " CURRENCY SIGN "
+ "16r00A5" 16r00 " invalid "
+ "16r00A6" 16rA6 " BROKEN BAR "
+ "16r00A7" 16rA7 " SECTION SIGN "
+ "16r00A8" 16r00 " invalid "
+ "16r00A9" 16rA9 " COPYRIGHT SIGN "
+ "16r00AA" 16r00 " invalid "
+ "16r00AB" 16rAB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK "
+ "16r00AC" 16rAC " NOT SIGN "
+ "16r00AD" 16rAD " SOFT HYPHEN "
+ "16r00AE" 16rAE " REGISTERED SIGN "
+ "16r00AF" 16r00 " invalid "
+ "16r00B0" 16rB0 " DEGREE SIGN "
+ "16r00B1" 16rB1 " PLUS-MINUS SIGN "
+ "16r00B2" 16r00 " invalid "
+ "16r00B3" 16r00 " invalid "
+ "16r00B4" 16r00 " invalid "
+ "16r00B5" 16rB5 " MICRO SIGN "
+ "16r00B6" 16rB6 " PILCROW SIGN "
+ "16r00B7" 16rB7 " MIDDLE DOT "
+ "16r00B8" 16r00 " invalid "
+ "16r00B9" 16r00 " invalid "
+ "16r00BA" 16r00 " invalid "
+ "16r00BB" 16rBB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "
+ ] at:(unicode - 16r9F).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r400 ifTrue:[
+ ^ self encodingError
+ ].
+ unicode <= 16r45F ifTrue:[
+ [
+ |t|
+ t := #[
+ "16r0401" 16rA8 " CYRILLIC CAPITAL LETTER IO "
+ "16r0402" 16r80 " CYRILLIC CAPITAL LETTER DJE (Serbocroatian) "
+ "16r0403" 16r81 " CYRILLIC CAPITAL LETTER GJE "
+ "16r0404" 16rAA " CYRILLIC CAPITAL LETTER UKRAINIAN IE "
+ "16r0405" 16rBD " CYRILLIC CAPITAL LETTER DZE "
+ "16r0406" 16rB2 " CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I "
+ "16r0407" 16rAF " CYRILLIC CAPITAL LETTER YI (Ukrainian) "
+ "16r0408" 16rA3 " CYRILLIC CAPITAL LETTER JE "
+ "16r0409" 16r8A " CYRILLIC CAPITAL LETTER LJE "
+ "16r040A" 16r8C " CYRILLIC CAPITAL LETTER NJE "
+ "16r040B" 16r8E " CYRILLIC CAPITAL LETTER TSHE (Serbocroatian) "
+ "16r040C" 16r8D " CYRILLIC CAPITAL LETTER KJE "
+ "16r040D" 16r00 " invalid "
+ "16r040E" 16rA1 " CYRILLIC CAPITAL LETTER SHORT U (Byelorussian) "
+ "16r040F" 16r8F " CYRILLIC CAPITAL LETTER DZHE "
+ "16r0410" 16rC0 " CYRILLIC CAPITAL LETTER A "
+ "16r0411" 16rC1 " CYRILLIC CAPITAL LETTER BE "
+ "16r0412" 16rC2 " CYRILLIC CAPITAL LETTER VE "
+ "16r0413" 16rC3 " CYRILLIC CAPITAL LETTER GHE "
+ "16r0414" 16rC4 " CYRILLIC CAPITAL LETTER DE "
+ "16r0415" 16rC5 " CYRILLIC CAPITAL LETTER IE "
+ "16r0416" 16rC6 " CYRILLIC CAPITAL LETTER ZHE "
+ "16r0417" 16rC7 " CYRILLIC CAPITAL LETTER ZE "
+ "16r0418" 16rC8 " CYRILLIC CAPITAL LETTER I "
+ "16r0419" 16rC9 " CYRILLIC CAPITAL LETTER SHORT I "
+ "16r041A" 16rCA " CYRILLIC CAPITAL LETTER KA "
+ "16r041B" 16rCB " CYRILLIC CAPITAL LETTER EL "
+ "16r041C" 16rCC " CYRILLIC CAPITAL LETTER EM "
+ "16r041D" 16rCD " CYRILLIC CAPITAL LETTER EN "
+ "16r041E" 16rCE " CYRILLIC CAPITAL LETTER O "
+ "16r041F" 16rCF " CYRILLIC CAPITAL LETTER PE "
+ "16r0420" 16rD0 " CYRILLIC CAPITAL LETTER ER "
+ "16r0421" 16rD1 " CYRILLIC CAPITAL LETTER ES "
+ "16r0422" 16rD2 " CYRILLIC CAPITAL LETTER TE "
+ "16r0423" 16rD3 " CYRILLIC CAPITAL LETTER U "
+ "16r0424" 16rD4 " CYRILLIC CAPITAL LETTER EF "
+ "16r0425" 16rD5 " CYRILLIC CAPITAL LETTER HA "
+ "16r0426" 16rD6 " CYRILLIC CAPITAL LETTER TSE "
+ "16r0427" 16rD7 " CYRILLIC CAPITAL LETTER CHE "
+ "16r0428" 16rD8 " CYRILLIC CAPITAL LETTER SHA "
+ "16r0429" 16rD9 " CYRILLIC CAPITAL LETTER SHCHA "
+ "16r042A" 16rDA " CYRILLIC CAPITAL LETTER HARD SIGN "
+ "16r042B" 16rDB " CYRILLIC CAPITAL LETTER YERU "
+ "16r042C" 16rDC " CYRILLIC CAPITAL LETTER SOFT SIGN "
+ "16r042D" 16rDD " CYRILLIC CAPITAL LETTER E "
+ "16r042E" 16rDE " CYRILLIC CAPITAL LETTER YU "
+ "16r042F" 16rDF " CYRILLIC CAPITAL LETTER YA "
+ "16r0430" 16rE0 " CYRILLIC SMALL LETTER A "
+ "16r0431" 16rE1 " CYRILLIC SMALL LETTER BE "
+ "16r0432" 16rE2 " CYRILLIC SMALL LETTER VE "
+ "16r0433" 16rE3 " CYRILLIC SMALL LETTER GHE "
+ "16r0434" 16rE4 " CYRILLIC SMALL LETTER DE "
+ "16r0435" 16rE5 " CYRILLIC SMALL LETTER IE "
+ "16r0436" 16rE6 " CYRILLIC SMALL LETTER ZHE "
+ "16r0437" 16rE7 " CYRILLIC SMALL LETTER ZE "
+ "16r0438" 16rE8 " CYRILLIC SMALL LETTER I "
+ "16r0439" 16rE9 " CYRILLIC SMALL LETTER SHORT I "
+ "16r043A" 16rEA " CYRILLIC SMALL LETTER KA "
+ "16r043B" 16rEB " CYRILLIC SMALL LETTER EL "
+ "16r043C" 16rEC " CYRILLIC SMALL LETTER EM "
+ "16r043D" 16rED " CYRILLIC SMALL LETTER EN "
+ "16r043E" 16rEE " CYRILLIC SMALL LETTER O "
+ "16r043F" 16rEF " CYRILLIC SMALL LETTER PE "
+ "16r0440" 16rF0 " CYRILLIC SMALL LETTER ER "
+ "16r0441" 16rF1 " CYRILLIC SMALL LETTER ES "
+ "16r0442" 16rF2 " CYRILLIC SMALL LETTER TE "
+ "16r0443" 16rF3 " CYRILLIC SMALL LETTER U "
+ "16r0444" 16rF4 " CYRILLIC SMALL LETTER EF "
+ "16r0445" 16rF5 " CYRILLIC SMALL LETTER HA "
+ "16r0446" 16rF6 " CYRILLIC SMALL LETTER TSE "
+ "16r0447" 16rF7 " CYRILLIC SMALL LETTER CHE "
+ "16r0448" 16rF8 " CYRILLIC SMALL LETTER SHA "
+ "16r0449" 16rF9 " CYRILLIC SMALL LETTER SHCHA "
+ "16r044A" 16rFA " CYRILLIC SMALL LETTER HARD SIGN "
+ "16r044B" 16rFB " CYRILLIC SMALL LETTER YERU "
+ "16r044C" 16rFC " CYRILLIC SMALL LETTER SOFT SIGN "
+ "16r044D" 16rFD " CYRILLIC SMALL LETTER E "
+ "16r044E" 16rFE " CYRILLIC SMALL LETTER YU "
+ "16r044F" 16rFF " CYRILLIC SMALL LETTER YA "
+ "16r0450" 16r00 " invalid "
+ "16r0451" 16rB8 " CYRILLIC SMALL LETTER IO "
+ "16r0452" 16r90 " CYRILLIC SMALL LETTER DJE (Serbocroatian) "
+ "16r0453" 16r83 " CYRILLIC SMALL LETTER GJE "
+ "16r0454" 16rBA " CYRILLIC SMALL LETTER UKRAINIAN IE "
+ "16r0455" 16rBE " CYRILLIC SMALL LETTER DZE "
+ "16r0456" 16rB3 " CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I "
+ "16r0457" 16rBF " CYRILLIC SMALL LETTER YI (Ukrainian) "
+ "16r0458" 16rBC " CYRILLIC SMALL LETTER JE "
+ "16r0459" 16r9A " CYRILLIC SMALL LETTER LJE "
+ "16r045A" 16r9C " CYRILLIC SMALL LETTER NJE "
+ "16r045B" 16r9E " CYRILLIC SMALL LETTER TSHE (Serbocroatian) "
+ "16r045C" 16r9D " CYRILLIC SMALL LETTER KJE "
+ "16r045D" 16r00 " invalid "
+ "16r045E" 16rA2 " CYRILLIC SMALL LETTER SHORT U (Byelorussian) "
+ "16r045F" 16r9F " CYRILLIC SMALL LETTER DZHE "
+ ] at:(unicode - 16r400).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r48F ifTrue:[
+ ^ self encodingError
+ ].
+ ^ #[
+ "16r0490" 16rA5 " CYRILLIC CAPITAL LETTER GHE WITH UPTURN "
+ "16r0491" 16rB4 " CYRILLIC SMALL LETTER GHE WITH UPTURN "
+ ] at:(unicode - 16r48F).
+ ].
+ unicode <= 16r2012 ifTrue:[
+ ^ self encodingError
+ ].
+ unicode <= 16r203A ifTrue:[
+ [
+ |t|
+ t := #[
+ "16r2013" 16r96 " EN DASH "
+ "16r2014" 16r97 " EM DASH "
+ "16r2015" 16r00 " invalid "
+ "16r2016" 16r00 " invalid "
+ "16r2017" 16r00 " invalid "
+ "16r2018" 16r91 " LEFT SINGLE QUOTATION MARK "
+ "16r2019" 16r92 " RIGHT SINGLE QUOTATION MARK "
+ "16r201A" 16r82 " SINGLE LOW-9 QUOTATION MARK "
+ "16r201B" 16r00 " invalid "
+ "16r201C" 16r93 " LEFT DOUBLE QUOTATION MARK "
+ "16r201D" 16r94 " RIGHT DOUBLE QUOTATION MARK "
+ "16r201E" 16r84 " DOUBLE LOW-9 QUOTATION MARK "
+ "16r201F" 16r00 " invalid "
+ "16r2020" 16r86 " DAGGER "
+ "16r2021" 16r87 " DOUBLE DAGGER "
+ "16r2022" 16r95 " BULLET "
+ "16r2023" 16r00 " invalid "
+ "16r2024" 16r00 " invalid "
+ "16r2025" 16r00 " invalid "
+ "16r2026" 16r85 " HORIZONTAL ELLIPSIS "
+ "16r2027" 16r00 " invalid "
+ "16r2028" 16r00 " invalid "
+ "16r2029" 16r00 " invalid "
+ "16r202A" 16r00 " invalid "
+ "16r202B" 16r00 " invalid "
+ "16r202C" 16r00 " invalid "
+ "16r202D" 16r00 " invalid "
+ "16r202E" 16r00 " invalid "
+ "16r202F" 16r00 " invalid "
+ "16r2030" 16r89 " PER MILLE SIGN "
+ "16r2031" 16r00 " invalid "
+ "16r2032" 16r00 " invalid "
+ "16r2033" 16r00 " invalid "
+ "16r2034" 16r00 " invalid "
+ "16r2035" 16r00 " invalid "
+ "16r2036" 16r00 " invalid "
+ "16r2037" 16r00 " invalid "
+ "16r2038" 16r00 " invalid "
+ "16r2039" 16r8B " SINGLE LEFT-POINTING ANGLE QUOTATION MARK "
+ "16r203A" 16r9B " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK "
+ ] at:(unicode - 16r2012).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r2115 ifTrue:[
+ ^ self encodingError
+ ].
+ unicode == 16r2116 ifTrue:[
+ (#[
+ "16r2116" 1 " NUMERO SIGN "
+ ] at:(unicode - 8469)) ~~ 0 ifTrue:[^ unicode].
+ ^ self encodingError
+ ].
+ unicode <= 16r2121 ifTrue:[
+ ^ self encodingError
+ ].
+ ^ "16r2122" 16r0099 " TRADE MARK SIGN "
+! !
+
!MS_Cyrillic class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MS_Cyrillic.st,v 1.3 2004-03-09 22:01:08 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MS_Cyrillic.st,v 1.4 2005-03-31 18:48:53 cg Exp $'
! !