7 char translit_latin1[0x60]=
11 const char *translit_katakana[0x60]=
13 "--", "a", "a", "i", "i", "u", "u", "e", "e", "o", "o",
14 "ka", "ga", "ki", "gi", "ku", "gu", "ke", "ge", "ko", "go",
15 "sa", "za", "si", "zi", "su", "zu", "se", "ze", "so", "zo",
16 "ta", "da", "ti", "di", "tu", "tu", "du", "te", "de", "to", "do",
22 namespace StringCodec {
24 void Ascii::Encoder::encode_char(unichar ch, string &buf)
27 return error(ch, buf, invalid_character(ch, "ASCII"));
32 void Ascii::Encoder::transliterate(unichar ch, string &buf)
34 if(ch>=0xC0 && ch<=0xC5)
40 else if(ch>=0xC8 && ch<=0xCB)
42 else if(ch>=0xCC && ch<=0xCF)
48 else if((ch>=0xD2 && ch<=0xD7) || ch==0xD9)
52 else if(ch>=0xDA && ch<=0xDC)
60 else if(ch>=0xE0 && ch<=0xE5)
66 else if(ch>=0xE8 && ch<=0xEB)
68 else if(ch>=0xEC && ch<=0xEF)
74 else if((ch>=0xF2 && ch<=0xF7) || ch==0xF9)
78 else if(ch>=0xFA && ch<=0xFC)
91 unichar Ascii::Decoder::decode_char(const string &str, string::const_iterator &i)
97 unichar result = error(invalid_sequence(i, i+1, "undefined ASCII character"));
105 } // namespace StringCodec