namespace Msp {
namespace StringCodec {
-void Utf8::Encoder::encode_char(UnicodeChar ch, string &buf)
+void Utf8::Encoder::encode_char(unichar ch, string &buf)
{
if(ch<0 || ch>0x10FFFF)
return error(ch, buf, "Can't express character in UTF-8");
}
}
-void Utf8::Encoder::transliterate(UnicodeChar, string &buf)
+void Utf8::Encoder::transliterate(unichar, string &buf)
{
buf.append("\357\277\275", 3); // � U+FFFE Replacement Character
}
-UnicodeChar Utf8::Decoder::decode_char(const string &str, string::const_iterator &i)
+unichar Utf8::Decoder::decode_char(const string &str, string::const_iterator &i)
{
if(i==str.end())
return error("No input");
if((*i&0xC0)==0x80)
{
- UnicodeChar result = error("UTF-8 tail byte found when expecting head");
+ unichar result = error("UTF-8 tail byte found when expecting head");
++i;
return result;
}
string::const_iterator j = i;
- UnicodeChar result = (*j++)&(mask-1);
+ unichar result = (*j++)&(mask-1);
unsigned k;
for(k=1; (k<bytes && j!=str.end() && (*j&0xC0)==0x80); ++k)