Home | History | Annotate | Download | only in lib

Lines Matching refs:utf8

44  * UTF8
930 * Gets the UTF8 character 'utf8char' from the UTF8 string 'utf8str' from
932 * @param utf8str: utf8 string
933 * @param pos: position from where the utf8 character is copied
934 * (also output set as position of the next utf8 character in the utf8 string)
935 * @param utf8char: zero terminated utf8 character containing 1 to 4 bytes (output)
937 static void picobase_get_utf8char (picoos_uint8 utf8[], picoos_int32 * pos, picobase_utf8char utf8char)
944 l = picobase_det_utf8_length(utf8[*pos]);
946 while ((((i < l) && (i < PICOBASE_UTF8_MAXLEN)) && (utf8[*pos] != 0))) {
947 utf8char[i] = utf8[*pos];
1068 * Converts utf8 input to utf32
1069 * @param utf8[] : character encoded in utf8
1073 static picobase_utf32 picobase_utf8_to_utf32 (picoos_uint8 utf8[], picoos_uint8 * done)
1076 if ((utf8[0] < (picoos_uint8)'\200')) {
1077 return utf8[0];
1078 } else if ((utf8[0] >= (picoos_uint8)'\370')) {
1080 } else if ((utf8[0] >= (picoos_uint8)'\360')) {
1081 return ((((262144 * (utf8[0] % 8)) + (4096 * (utf8[1] % 64))) + (64 * (utf8[2] % 64))) + (utf8[3] % 64));
1082 } else if ((utf8[0] >= (picoos_uint8)'\340')) {
1083 return (((4096 * (utf8[0] % 16)) + (64 * (utf8[1] % 64))) + (utf8[2] % 64));
1084 } else if ((utf8[(0)] >= (picoos_uint8)'\300')) {
1085 return ((64 * (utf8[0] % 32)) + (utf8[1] % 64));
1092 static picoos_int32 picobase_utf32_to_utf8 (picobase_utf32 utf32, picobase_utf8 utf8[], picoos_int32 utf8MaxLen, picoos_uint8 * done)
1100 utf8[0] = utf32;
1103 utf8[1] = (128 + (utf32 % 64));
1105 utf8[0] = (192 + (utf32 % 32));
1108 utf8[2] = (128 + (utf32 % 64));
1110 utf8[1] = (128 + (utf32 % 64));
1112 utf8[0] = (224 + utf32);
1115 utf8[3] = (128 + (utf32 % 64));
1117 utf8[2] = (128 + (utf32 % 64));
1119 utf8[1] = (128 + (utf32 % 64));
1121 utf8[0] = (240 + utf32);
1127 utf8[len] = 0;