Lines Matching refs:c

37 static int mbfl_filt_ident_utf8(int c, mbfl_identify_filter *filter);
99 int mbfl_filt_conv_utf8_wchar(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_utf8_wchar() argument
103 if (c < 0x80) { in mbfl_filt_conv_utf8_wchar()
104 if (c >= 0) { in mbfl_filt_conv_utf8_wchar()
105 CK((*filter->output_function)(c, filter->data)); in mbfl_filt_conv_utf8_wchar()
108 } else if (c < 0xc0) { in mbfl_filt_conv_utf8_wchar()
117 s = filter->cache | (c & 0x3f); in mbfl_filt_conv_utf8_wchar()
130 filter->cache |= ((c & 0x3f) << 6); in mbfl_filt_conv_utf8_wchar()
136 filter->cache |= ((c & 0x3f) << 12); in mbfl_filt_conv_utf8_wchar()
141 filter->cache |= ((c & 0x3f) << 18); in mbfl_filt_conv_utf8_wchar()
145 filter->cache |= ((c & 0x3f) << 24); in mbfl_filt_conv_utf8_wchar()
152 } else if (c < 0xe0) { /* 2byte code first char */ in mbfl_filt_conv_utf8_wchar()
154 filter->cache = (c & 0x1f) << 6; in mbfl_filt_conv_utf8_wchar()
155 } else if (c < 0xf0) { /* 3byte code first char */ in mbfl_filt_conv_utf8_wchar()
157 filter->cache = (c & 0xf) << 12; in mbfl_filt_conv_utf8_wchar()
158 } else if (c < 0xf8) { /* 4byte code first char */ in mbfl_filt_conv_utf8_wchar()
160 filter->cache = (c & 0x7) << 18; in mbfl_filt_conv_utf8_wchar()
161 } else if (c < 0xfc) { /* 5byte code first char */ in mbfl_filt_conv_utf8_wchar()
163 filter->cache = (c & 0x3) << 24; in mbfl_filt_conv_utf8_wchar()
164 } else if (c < 0xfe) { /* 6 byte code first char */ in mbfl_filt_conv_utf8_wchar()
166 filter->cache = (c & 0x1) << 30; in mbfl_filt_conv_utf8_wchar()
172 return c; in mbfl_filt_conv_utf8_wchar()
178 int mbfl_filt_conv_wchar_utf8(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_wchar_utf8() argument
180 if (c >= 0 && c < MBFL_WCSGROUP_UCS4MAX) { in mbfl_filt_conv_wchar_utf8()
181 if (c < 0x80) { in mbfl_filt_conv_wchar_utf8()
182 CK((*filter->output_function)(c, filter->data)); in mbfl_filt_conv_wchar_utf8()
183 } else if (c < 0x800) { in mbfl_filt_conv_wchar_utf8()
184 CK((*filter->output_function)(((c >> 6) & 0x1f) | 0xc0, filter->data)); in mbfl_filt_conv_wchar_utf8()
185 CK((*filter->output_function)((c & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
186 } else if (c < 0x10000) { in mbfl_filt_conv_wchar_utf8()
187 CK((*filter->output_function)(((c >> 12) & 0x0f) | 0xe0, filter->data)); in mbfl_filt_conv_wchar_utf8()
188 CK((*filter->output_function)(((c >> 6) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
189 CK((*filter->output_function)((c & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
190 } else if (c < 0x200000) { in mbfl_filt_conv_wchar_utf8()
191 CK((*filter->output_function)(((c >> 18) & 0x07) | 0xf0, filter->data)); in mbfl_filt_conv_wchar_utf8()
192 CK((*filter->output_function)(((c >> 12) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
193 CK((*filter->output_function)(((c >> 6) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
194 CK((*filter->output_function)((c & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
195 } else if (c < 0x4000000) { in mbfl_filt_conv_wchar_utf8()
196 CK((*filter->output_function)(((c >> 24) & 0x03) | 0xf8, filter->data)); in mbfl_filt_conv_wchar_utf8()
197 CK((*filter->output_function)(((c >> 18) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
198 CK((*filter->output_function)(((c >> 12) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
199 CK((*filter->output_function)(((c >> 6) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
200 CK((*filter->output_function)((c & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
202 CK((*filter->output_function)(((c >> 30) & 0x01) | 0xfc, filter->data)); in mbfl_filt_conv_wchar_utf8()
203 CK((*filter->output_function)(((c >> 24) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
204 CK((*filter->output_function)(((c >> 18) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
205 CK((*filter->output_function)(((c >> 12) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
206 CK((*filter->output_function)(((c >> 6) & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
207 CK((*filter->output_function)((c & 0x3f) | 0x80, filter->data)); in mbfl_filt_conv_wchar_utf8()
211 CK(mbfl_filt_conv_illegal_output(c, filter)); in mbfl_filt_conv_wchar_utf8()
215 return c; in mbfl_filt_conv_wchar_utf8()
218 static int mbfl_filt_ident_utf8(int c, mbfl_identify_filter *filter) in mbfl_filt_ident_utf8() argument
220 if (c < 0x80) { in mbfl_filt_ident_utf8()
221 if (c < 0) { in mbfl_filt_ident_utf8()
227 } else if (c < 0xc0) { in mbfl_filt_ident_utf8()
258 if (c < 0xe0) { /* 2 byte code first char */ in mbfl_filt_ident_utf8()
260 } else if (c < 0xf0) { /* 3 byte code 1st char */ in mbfl_filt_ident_utf8()
262 } else if (c < 0xf8) { /* 4 byte code 1st char */ in mbfl_filt_ident_utf8()
264 } else if (c < 0xfc) { /* 5 byte code 1st char */ in mbfl_filt_ident_utf8()
266 } else if (c < 0xfe) { /* 6 byte code 1st char */ in mbfl_filt_ident_utf8()
273 return c; in mbfl_filt_ident_utf8()