CharacterEncoderImplementations__KOI7.st
changeset 8081 b468050174a9
child 8114 05274a80fcc4
equal deleted inserted replaced
8080:db22e5dcf518 8081:b468050174a9
       
     1 "{ Encoding: utf8 }"
       
     2 
       
     3 "{ Package: 'stx:libbasic' }"
       
     4 
       
     5 "{ NameSpace: CharacterEncoderImplementations }"
       
     6 
       
     7 SingleByteEncoder subclass:#KOI7
       
     8 	instanceVariableNames:''
       
     9 	classVariableNames:''
       
    10 	poolDictionaries:''
       
    11 	category:'Collections-Text-Encodings'
       
    12 !
       
    13 
       
    14 
       
    15 !KOI7 class methodsFor:'mapping'!
       
    16 
       
    17 mapFileURL2_relativePathName
       
    18     ^ 'KOI-7'
       
    19 !
       
    20 
       
    21 mapping
       
    22 "
       
    23 # From: http://std.dkuug.dk/i18n/charmaps/KOI-7
       
    24 
       
    25 <code_set_name> ISO_5427
       
    26 <comment_char> %
       
    27 <escape_char> /
       
    28 % version: 1.0
       
    29 % repertoiremap: mnemonic,ds
       
    30 %  source: ECMA registry
       
    31 
       
    32 % alias ISO-IR-37
       
    33 % alias KOI-7
       
    34 CHARMAP
       
    35 <NU>                   /x00   <U0000> NULL (NUL)
       
    36 <SH>                   /x01   <U0001> START OF HEADING (SOH)
       
    37 <SX>                   /x02   <U0002> START OF TEXT (STX)
       
    38 <EX>                   /x03   <U0003> END OF TEXT (ETX)
       
    39 <ET>                   /x04   <U0004> END OF TRANSMISSION (EOT)
       
    40 <EQ>                   /x05   <U0005> ENQUIRY (ENQ)
       
    41 <AK>                   /x06   <U0006> ACKNOWLEDGE (ACK)
       
    42 <BL>                   /x07   <U0007> BELL (BEL)
       
    43 <BS>                   /x08   <U0008> BACKSPACE (BS)
       
    44 <HT>                   /x09   <U0009> CHARACTER TABULATION (HT)
       
    45 <LF>                   /x0A   <U000A> LINE FEED (LF)
       
    46 <VT>                   /x0B   <U000B> LINE TABULATION (VT)
       
    47 <FF>                   /x0C   <U000C> FORM FEED (FF)
       
    48 <CR>                   /x0D   <U000D> CARRIAGE RETURN (CR)
       
    49 <SO>                   /x0E   <U000E> SHIFT OUT (SO)
       
    50 <SI>                   /x0F   <U000F> SHIFT IN (SI)
       
    51 <DL>                   /x10   <U0010> DATALINK ESCAPE (DLE)
       
    52 <D1>                   /x11   <U0011> DEVICE CONTROL ONE (DC1)
       
    53 <D2>                   /x12   <U0012> DEVICE CONTROL TWO (DC2)
       
    54 <D3>                   /x13   <U0013> DEVICE CONTROL THREE (DC3)
       
    55 <D4>                   /x14   <U0014> DEVICE CONTROL FOUR (DC4)
       
    56 <NK>                   /x15   <U0015> NEGATIVE ACKNOWLEDGE (NAK)
       
    57 <SY>                   /x16   <U0016> SYNCHRONOUS IDLE (SYN)
       
    58 <EB>                   /x17   <U0017> END OF TRANSMISSION BLOCK (ETB)
       
    59 <CN>                   /x18   <U0018> CANCEL (CAN)
       
    60 <EM>                   /x19   <U0019> END OF MEDIUM (EM)
       
    61 <SB>                   /x1A   <U001A> SUBSTITUTE (SUB)
       
    62 <EC>                   /x1B   <U001B> ESCAPE (ESC)
       
    63 <FS>                   /x1C   <U001C> FILE SEPARATOR (IS4)
       
    64 <GS>                   /x1D   <U001D> GROUP SEPARATOR (IS3)
       
    65 <RS>                   /x1E   <U001E> RECORD SEPARATOR (IS2)
       
    66 <US>                   /x1F   <U001F> UNIT SEPARATOR (IS1)
       
    67 <SP>                   /x20   <U0020> SPACE
       
    68 <!!>                    /x21   <U0021> EXCLAMATION MARK
       
    69 <'>                    /x22   <U0022> QUOTATION MARK
       
    70 <Nb>                   /x23   <U0023> NUMBER SIGN
       
    71 <Cu>                   /x24   <U00A4> CURRENCY SIGN
       
    72 <%>                    /x25   <U0025> PERCENT SIGN
       
    73 <&>                    /x26   <U0026> AMPERSAND
       
    74 <'>                    /x27   <U0027> APOSTROPHE
       
    75 <(>                    /x28   <U0028> LEFT PARENTHESIS
       
    76 <)>                    /x29   <U0029> RIGHT PARENTHESIS
       
    77 <*>                    /x2A   <U002A> ASTERISK
       
    78 <+>                    /x2B   <U002B> PLUS SIGN
       
    79 <,>                    /x2C   <U002C> COMMA
       
    80 <->                    /x2D   <U002D> HYPHEN-MINUS
       
    81 <.>                    /x2E   <U002E> FULL STOP
       
    82 <//>                   /x2F   <U002F> SOLIDUS
       
    83 <0>                    /x30   <U0030> DIGIT ZERO
       
    84 <1>                    /x31   <U0031> DIGIT ONE
       
    85 <2>                    /x32   <U0032> DIGIT TWO
       
    86 <3>                    /x33   <U0033> DIGIT THREE
       
    87 <4>                    /x34   <U0034> DIGIT FOUR
       
    88 <5>                    /x35   <U0035> DIGIT FIVE
       
    89 <6>                    /x36   <U0036> DIGIT SIX
       
    90 <7>                    /x37   <U0037> DIGIT SEVEN
       
    91 <8>                    /x38   <U0038> DIGIT EIGHT
       
    92 <9>                    /x39   <U0039> DIGIT NINE
       
    93 <:>                    /x3A   <U003A> COLON
       
    94 <;>                    /x3B   <U003B> SEMICOLON
       
    95 <<>                    /x3C   <U003C> LESS-THAN SIGN
       
    96 <=>                    /x3D   <U003D> EQUALS SIGN
       
    97 </>>                   /x3E   <U003E> GREATER-THAN SIGN
       
    98 <?>                    /x3F   <U003F> QUESTION MARK
       
    99 <ju>                   /x40   <U044E> CYRILLIC SMALL LETTER YU
       
   100 <a=>                   /x41   <U0430> CYRILLIC SMALL LETTER A
       
   101 <b=>                   /x42   <U0431> CYRILLIC SMALL LETTER BE
       
   102 <c=>                   /x43   <U0446> CYRILLIC SMALL LETTER TSE
       
   103 <d=>                   /x44   <U0434> CYRILLIC SMALL LETTER DE
       
   104 <e=>                   /x45   <U0435> CYRILLIC SMALL LETTER IE
       
   105 <f=>                   /x46   <U0444> CYRILLIC SMALL LETTER EF
       
   106 <g=>                   /x47   <U0433> CYRILLIC SMALL LETTER GHE
       
   107 <h=>                   /x48   <U0445> CYRILLIC SMALL LETTER HA
       
   108 <i=>                   /x49   <U0438> CYRILLIC SMALL LETTER I
       
   109 <j=>                   /x4A   <U0439> CYRILLIC SMALL LETTER SHORT I
       
   110 <k=>                   /x4B   <U043A> CYRILLIC SMALL LETTER KA
       
   111 <l=>                   /x4C   <U043B> CYRILLIC SMALL LETTER EL
       
   112 <m=>                   /x4D   <U043C> CYRILLIC SMALL LETTER EM
       
   113 <n=>                   /x4E   <U043D> CYRILLIC SMALL LETTER EN
       
   114 <o=>                   /x4F   <U043E> CYRILLIC SMALL LETTER O
       
   115 <p=>                   /x50   <U043F> CYRILLIC SMALL LETTER PE
       
   116 <ja>                   /x51   <U044F> CYRILLIC SMALL LETTER YA
       
   117 <r=>                   /x52   <U0440> CYRILLIC SMALL LETTER ER
       
   118 <s=>                   /x53   <U0441> CYRILLIC SMALL LETTER ES
       
   119 <t=>                   /x54   <U0442> CYRILLIC SMALL LETTER TE
       
   120 <u=>                   /x55   <U0443> CYRILLIC SMALL LETTER U
       
   121 <z%>                   /x56   <U0436> CYRILLIC SMALL LETTER ZHE
       
   122 <v=>                   /x57   <U0432> CYRILLIC SMALL LETTER VE
       
   123 <%'>                   /x58   <U044C> CYRILLIC SMALL LETTER SOFT SIGN
       
   124 <y=>                   /x59   <U044B> CYRILLIC SMALL LETTER YERU
       
   125 <z=>                   /x5A   <U0437> CYRILLIC SMALL LETTER ZE
       
   126 <s%>                   /x5B   <U0448> CYRILLIC SMALL LETTER SHA
       
   127 <je>                   /x5C   <U044D> CYRILLIC SMALL LETTER E
       
   128 <sc>                   /x5D   <U0449> CYRILLIC SMALL LETTER SHCHA
       
   129 <c%>                   /x5E   <U0447> CYRILLIC SMALL LETTER CHE
       
   130 <='>                   /x5F   <U044A> CYRILLIC SMALL LETTER HARD SIGN
       
   131 <JU>                   /x60   <U042E> CYRILLIC CAPITAL LETTER YU
       
   132 <A=>                   /x61   <U0410> CYRILLIC CAPITAL LETTER A
       
   133 <B=>                   /x62   <U0411> CYRILLIC CAPITAL LETTER BE
       
   134 <C=>                   /x63   <U0426> CYRILLIC CAPITAL LETTER TSE
       
   135 <D=>                   /x64   <U0414> CYRILLIC CAPITAL LETTER DE
       
   136 <E=>                   /x65   <U0415> CYRILLIC CAPITAL LETTER IE
       
   137 <F=>                   /x66   <U0424> CYRILLIC CAPITAL LETTER EF
       
   138 <G=>                   /x67   <U0413> CYRILLIC CAPITAL LETTER GHE
       
   139 <H=>                   /x68   <U0425> CYRILLIC CAPITAL LETTER HA
       
   140 <I=>                   /x69   <U0418> CYRILLIC CAPITAL LETTER I
       
   141 <J=>                   /x6A   <U0419> CYRILLIC CAPITAL LETTER SHORT I
       
   142 <K=>                   /x6B   <U041A> CYRILLIC CAPITAL LETTER KA
       
   143 <L=>                   /x6C   <U041B> CYRILLIC CAPITAL LETTER EL
       
   144 <M=>                   /x6D   <U041C> CYRILLIC CAPITAL LETTER EM
       
   145 <N=>                   /x6E   <U041D> CYRILLIC CAPITAL LETTER EN
       
   146 <O=>                   /x6F   <U041E> CYRILLIC CAPITAL LETTER O
       
   147 <P=>                   /x70   <U041F> CYRILLIC CAPITAL LETTER PE
       
   148 <JA>                   /x71   <U042F> CYRILLIC CAPITAL LETTER YA
       
   149 <R=>                   /x72   <U0420> CYRILLIC CAPITAL LETTER ER
       
   150 <S=>                   /x73   <U0421> CYRILLIC CAPITAL LETTER ES
       
   151 <T=>                   /x74   <U0422> CYRILLIC CAPITAL LETTER TE
       
   152 <U=>                   /x75   <U0423> CYRILLIC CAPITAL LETTER U
       
   153 <Z%>                   /x76   <U0416> CYRILLIC CAPITAL LETTER ZHE
       
   154 <V=>                   /x77   <U0412> CYRILLIC CAPITAL LETTER VE
       
   155 <%'>                   /x78   <U042C> CYRILLIC CAPITAL LETTER SOFT SIGN
       
   156 <Y=>                   /x79   <U042B> CYRILLIC CAPITAL LETTER YERU
       
   157 <Z=>                   /x7A   <U0417> CYRILLIC CAPITAL LETTER ZE
       
   158 <S%>                   /x7B   <U0428> CYRILLIC CAPITAL LETTER SHA
       
   159 <JE>                   /x7C   <U042D> CYRILLIC CAPITAL LETTER E
       
   160 <Sc>                   /x7D   <U0429> CYRILLIC CAPITAL LETTER SHCHA
       
   161 <C%>                   /x7E   <U0427> CYRILLIC CAPITAL LETTER CHE
       
   162 <DT>                   /x7F   <U007F> DELETE (DEL)
       
   163 END CHARMAP
       
   164 
       
   165 "
       
   166 ! !
       
   167 
       
   168 !KOI7 class methodsFor:'queries'!
       
   169 
       
   170 namesOfEncoding
       
   171     ^ #( #'koi7' )
       
   172 ! !
       
   173 
       
   174 !KOI7 methodsFor:'encoding & decoding'!
       
   175 
       
   176 decode:codeArg
       
   177     "Decode from my encoding into unicode."
       
   178 
       
   179     |code "{ Class: SmallInteger }"|
       
   180 
       
   181     code := codeArg.
       
   182     code == 16r24 ifTrue:[
       
   183         ^  "16r0024" 16r00A4 " CURRENCY SIGN " 
       
   184     ].
       
   185     code <= 16r3F ifTrue:[ ^ code ].
       
   186     code > 16r7F ifTrue:[
       
   187         ^ self decodingError.
       
   188     ].
       
   189     ^ #(
       
   190        "16r0040"    16r044E " CYRILLIC SMALL LETTER YU " 
       
   191        "16r0041"    16r0430 " CYRILLIC SMALL LETTER A " 
       
   192        "16r0042"    16r0431 " CYRILLIC SMALL LETTER BE " 
       
   193        "16r0043"    16r0446 " CYRILLIC SMALL LETTER TSE " 
       
   194        "16r0044"    16r0434 " CYRILLIC SMALL LETTER DE " 
       
   195        "16r0045"    16r0435 " CYRILLIC SMALL LETTER IE " 
       
   196        "16r0046"    16r0444 " CYRILLIC SMALL LETTER EF " 
       
   197        "16r0047"    16r0433 " CYRILLIC SMALL LETTER GHE " 
       
   198        "16r0048"    16r0445 " CYRILLIC SMALL LETTER HA " 
       
   199        "16r0049"    16r0438 " CYRILLIC SMALL LETTER I " 
       
   200        "16r004A"    16r0439 " CYRILLIC SMALL LETTER SHORT I " 
       
   201        "16r004B"    16r043A " CYRILLIC SMALL LETTER KA " 
       
   202        "16r004C"    16r043B " CYRILLIC SMALL LETTER EL " 
       
   203        "16r004D"    16r043C " CYRILLIC SMALL LETTER EM " 
       
   204        "16r004E"    16r043D " CYRILLIC SMALL LETTER EN " 
       
   205        "16r004F"    16r043E " CYRILLIC SMALL LETTER O " 
       
   206        "16r0050"    16r043F " CYRILLIC SMALL LETTER PE " 
       
   207        "16r0051"    16r044F " CYRILLIC SMALL LETTER YA " 
       
   208        "16r0052"    16r0440 " CYRILLIC SMALL LETTER ER " 
       
   209        "16r0053"    16r0441 " CYRILLIC SMALL LETTER ES " 
       
   210        "16r0054"    16r0442 " CYRILLIC SMALL LETTER TE " 
       
   211        "16r0055"    16r0443 " CYRILLIC SMALL LETTER U " 
       
   212        "16r0056"    16r0436 " CYRILLIC SMALL LETTER ZHE " 
       
   213        "16r0057"    16r0432 " CYRILLIC SMALL LETTER VE " 
       
   214        "16r0058"    16r044C " CYRILLIC SMALL LETTER SOFT SIGN " 
       
   215        "16r0059"    16r044B " CYRILLIC SMALL LETTER YERU " 
       
   216        "16r005A"    16r0437 " CYRILLIC SMALL LETTER ZE " 
       
   217        "16r005B"    16r0448 " CYRILLIC SMALL LETTER SHA " 
       
   218        "16r005C"    16r044D " CYRILLIC SMALL LETTER E " 
       
   219        "16r005D"    16r0449 " CYRILLIC SMALL LETTER SHCHA " 
       
   220        "16r005E"    16r0447 " CYRILLIC SMALL LETTER CHE " 
       
   221        "16r005F"    16r044A " CYRILLIC SMALL LETTER HARD SIGN " 
       
   222        "16r0060"    16r042E " CYRILLIC CAPITAL LETTER YU " 
       
   223        "16r0061"    16r0410 " CYRILLIC CAPITAL LETTER A " 
       
   224        "16r0062"    16r0411 " CYRILLIC CAPITAL LETTER BE " 
       
   225        "16r0063"    16r0426 " CYRILLIC CAPITAL LETTER TSE " 
       
   226        "16r0064"    16r0414 " CYRILLIC CAPITAL LETTER DE " 
       
   227        "16r0065"    16r0415 " CYRILLIC CAPITAL LETTER IE " 
       
   228        "16r0066"    16r0424 " CYRILLIC CAPITAL LETTER EF " 
       
   229        "16r0067"    16r0413 " CYRILLIC CAPITAL LETTER GHE " 
       
   230        "16r0068"    16r0425 " CYRILLIC CAPITAL LETTER HA " 
       
   231        "16r0069"    16r0418 " CYRILLIC CAPITAL LETTER I " 
       
   232        "16r006A"    16r0419 " CYRILLIC CAPITAL LETTER SHORT I " 
       
   233        "16r006B"    16r041A " CYRILLIC CAPITAL LETTER KA " 
       
   234        "16r006C"    16r041B " CYRILLIC CAPITAL LETTER EL " 
       
   235        "16r006D"    16r041C " CYRILLIC CAPITAL LETTER EM " 
       
   236        "16r006E"    16r041D " CYRILLIC CAPITAL LETTER EN " 
       
   237        "16r006F"    16r041E " CYRILLIC CAPITAL LETTER O " 
       
   238        "16r0070"    16r041F " CYRILLIC CAPITAL LETTER PE " 
       
   239        "16r0071"    16r042F " CYRILLIC CAPITAL LETTER YA " 
       
   240        "16r0072"    16r0420 " CYRILLIC CAPITAL LETTER ER " 
       
   241        "16r0073"    16r0421 " CYRILLIC CAPITAL LETTER ES " 
       
   242        "16r0074"    16r0422 " CYRILLIC CAPITAL LETTER TE " 
       
   243        "16r0075"    16r0423 " CYRILLIC CAPITAL LETTER U " 
       
   244        "16r0076"    16r0416 " CYRILLIC CAPITAL LETTER ZHE " 
       
   245        "16r0077"    16r0412 " CYRILLIC CAPITAL LETTER VE " 
       
   246        "16r0078"    16r042C " CYRILLIC CAPITAL LETTER SOFT SIGN " 
       
   247        "16r0079"    16r042B " CYRILLIC CAPITAL LETTER YERU " 
       
   248        "16r007A"    16r0417 " CYRILLIC CAPITAL LETTER ZE " 
       
   249        "16r007B"    16r0428 " CYRILLIC CAPITAL LETTER SHA " 
       
   250        "16r007C"    16r042D " CYRILLIC CAPITAL LETTER E " 
       
   251        "16r007D"    16r0429 " CYRILLIC CAPITAL LETTER SHCHA " 
       
   252        "16r007E"    16r0427 " CYRILLIC CAPITAL LETTER CHE " 
       
   253        "16r007F"    16r007F " DELETE (DEL) " 
       
   254        ) at:(code - 16r3F).
       
   255 !
       
   256 
       
   257 encode:unicodeArg
       
   258     "Automagically generated by generateCode - do not modify.
       
   259      Encode from unicode into my encoding."
       
   260 
       
   261     |unicode "{ Class: SmallInteger }"|
       
   262 
       
   263     unicode := unicodeArg.
       
   264     unicode <= 16r23 ifTrue:[ ^ unicode ].
       
   265     unicode > 16r44F ifTrue:[
       
   266         ^ self encodingError.
       
   267     ].
       
   268     unicode == 16r24 ifTrue:[
       
   269         ^ self encodingError
       
   270     ].
       
   271     unicode <= 16rA4 ifTrue:[
       
   272         unicode <= 16r3F ifTrue:[
       
   273             ^ unicode
       
   274         ].
       
   275         unicode <= 16r7E ifTrue:[
       
   276             ^ self encodingError
       
   277         ].
       
   278         unicode == 16r7F ifTrue:[
       
   279             ^  "16r007F" 16r007F " DELETE (DEL) " 
       
   280         ].
       
   281         unicode <= 16rA3 ifTrue:[
       
   282             ^ self encodingError
       
   283         ].
       
   284         ^  "16r00A4" 16r0024 " CURRENCY SIGN " 
       
   285     ].
       
   286     unicode <= 16r40F ifTrue:[
       
   287         ^ self encodingError
       
   288     ].
       
   289     [
       
   290         |t|
       
   291         t := #[
       
   292            "16r0410"    16r61 " CYRILLIC CAPITAL LETTER A " 
       
   293            "16r0411"    16r62 " CYRILLIC CAPITAL LETTER BE " 
       
   294            "16r0412"    16r77 " CYRILLIC CAPITAL LETTER VE " 
       
   295            "16r0413"    16r67 " CYRILLIC CAPITAL LETTER GHE " 
       
   296            "16r0414"    16r64 " CYRILLIC CAPITAL LETTER DE " 
       
   297            "16r0415"    16r65 " CYRILLIC CAPITAL LETTER IE " 
       
   298            "16r0416"    16r76 " CYRILLIC CAPITAL LETTER ZHE " 
       
   299            "16r0417"    16r7A " CYRILLIC CAPITAL LETTER ZE " 
       
   300            "16r0418"    16r69 " CYRILLIC CAPITAL LETTER I " 
       
   301            "16r0419"    16r6A " CYRILLIC CAPITAL LETTER SHORT I " 
       
   302            "16r041A"    16r6B " CYRILLIC CAPITAL LETTER KA " 
       
   303            "16r041B"    16r6C " CYRILLIC CAPITAL LETTER EL " 
       
   304            "16r041C"    16r6D " CYRILLIC CAPITAL LETTER EM " 
       
   305            "16r041D"    16r6E " CYRILLIC CAPITAL LETTER EN " 
       
   306            "16r041E"    16r6F " CYRILLIC CAPITAL LETTER O " 
       
   307            "16r041F"    16r70 " CYRILLIC CAPITAL LETTER PE " 
       
   308            "16r0420"    16r72 " CYRILLIC CAPITAL LETTER ER " 
       
   309            "16r0421"    16r73 " CYRILLIC CAPITAL LETTER ES " 
       
   310            "16r0422"    16r74 " CYRILLIC CAPITAL LETTER TE " 
       
   311            "16r0423"    16r75 " CYRILLIC CAPITAL LETTER U " 
       
   312            "16r0424"    16r66 " CYRILLIC CAPITAL LETTER EF " 
       
   313            "16r0425"    16r68 " CYRILLIC CAPITAL LETTER HA " 
       
   314            "16r0426"    16r63 " CYRILLIC CAPITAL LETTER TSE " 
       
   315            "16r0427"    16r7E " CYRILLIC CAPITAL LETTER CHE " 
       
   316            "16r0428"    16r7B " CYRILLIC CAPITAL LETTER SHA " 
       
   317            "16r0429"    16r7D " CYRILLIC CAPITAL LETTER SHCHA " 
       
   318            "16r042A"    16r00 " invalid " 
       
   319            "16r042B"    16r79 " CYRILLIC CAPITAL LETTER YERU " 
       
   320            "16r042C"    16r78 " CYRILLIC CAPITAL LETTER SOFT SIGN " 
       
   321            "16r042D"    16r7C " CYRILLIC CAPITAL LETTER E " 
       
   322            "16r042E"    16r60 " CYRILLIC CAPITAL LETTER YU " 
       
   323            "16r042F"    16r71 " CYRILLIC CAPITAL LETTER YA " 
       
   324            "16r0430"    16r41 " CYRILLIC SMALL LETTER A " 
       
   325            "16r0431"    16r42 " CYRILLIC SMALL LETTER BE " 
       
   326            "16r0432"    16r57 " CYRILLIC SMALL LETTER VE " 
       
   327            "16r0433"    16r47 " CYRILLIC SMALL LETTER GHE " 
       
   328            "16r0434"    16r44 " CYRILLIC SMALL LETTER DE " 
       
   329            "16r0435"    16r45 " CYRILLIC SMALL LETTER IE " 
       
   330            "16r0436"    16r56 " CYRILLIC SMALL LETTER ZHE " 
       
   331            "16r0437"    16r5A " CYRILLIC SMALL LETTER ZE " 
       
   332            "16r0438"    16r49 " CYRILLIC SMALL LETTER I " 
       
   333            "16r0439"    16r4A " CYRILLIC SMALL LETTER SHORT I " 
       
   334            "16r043A"    16r4B " CYRILLIC SMALL LETTER KA " 
       
   335            "16r043B"    16r4C " CYRILLIC SMALL LETTER EL " 
       
   336            "16r043C"    16r4D " CYRILLIC SMALL LETTER EM " 
       
   337            "16r043D"    16r4E " CYRILLIC SMALL LETTER EN " 
       
   338            "16r043E"    16r4F " CYRILLIC SMALL LETTER O " 
       
   339            "16r043F"    16r50 " CYRILLIC SMALL LETTER PE " 
       
   340            "16r0440"    16r52 " CYRILLIC SMALL LETTER ER " 
       
   341            "16r0441"    16r53 " CYRILLIC SMALL LETTER ES " 
       
   342            "16r0442"    16r54 " CYRILLIC SMALL LETTER TE " 
       
   343            "16r0443"    16r55 " CYRILLIC SMALL LETTER U " 
       
   344            "16r0444"    16r46 " CYRILLIC SMALL LETTER EF " 
       
   345            "16r0445"    16r48 " CYRILLIC SMALL LETTER HA " 
       
   346            "16r0446"    16r43 " CYRILLIC SMALL LETTER TSE " 
       
   347            "16r0447"    16r5E " CYRILLIC SMALL LETTER CHE " 
       
   348            "16r0448"    16r5B " CYRILLIC SMALL LETTER SHA " 
       
   349            "16r0449"    16r5D " CYRILLIC SMALL LETTER SHCHA " 
       
   350            "16r044A"    16r5F " CYRILLIC SMALL LETTER HARD SIGN " 
       
   351            "16r044B"    16r59 " CYRILLIC SMALL LETTER YERU " 
       
   352            "16r044C"    16r58 " CYRILLIC SMALL LETTER SOFT SIGN " 
       
   353            "16r044D"    16r5C " CYRILLIC SMALL LETTER E " 
       
   354            "16r044E"    16r40 " CYRILLIC SMALL LETTER YU " 
       
   355            "16r044F"    16r51 " CYRILLIC SMALL LETTER YA " 
       
   356            ] at:(unicode - 16r40F).
       
   357         t == 0 ifFalse:[^ t].
       
   358         ^ self encodingError
       
   359     ] value.
       
   360 ! !
       
   361 
       
   362 !KOI7 class methodsFor:'documentation'!
       
   363 
       
   364 version
       
   365     ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__KOI7.st,v 1.1 2004-03-05 17:20:42 cg Exp $'
       
   366 ! !