Lines Matching refs:filter

131 int mbfl_filt_conv_utf16_wchar(int c, mbfl_convert_filter *filter)  in mbfl_filt_conv_utf16_wchar()  argument
135 endian = filter->status & 0xff00; in mbfl_filt_conv_utf16_wchar()
136 switch (filter->status & 0x0f) { in mbfl_filt_conv_utf16_wchar()
143 filter->cache |= n; in mbfl_filt_conv_utf16_wchar()
144 filter->status++; in mbfl_filt_conv_utf16_wchar()
152 n |= filter->cache & 0xffff; in mbfl_filt_conv_utf16_wchar()
153 filter->status &= ~0x0f; in mbfl_filt_conv_utf16_wchar()
155 filter->cache = ((n & 0x3ff) << 16) + 0x400000; in mbfl_filt_conv_utf16_wchar()
158 n |= (filter->cache & 0xfff0000) >> 6; in mbfl_filt_conv_utf16_wchar()
159 filter->cache = 0; in mbfl_filt_conv_utf16_wchar()
161 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16_wchar()
165 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16_wchar()
168 int is_first = filter->status & 0x10; in mbfl_filt_conv_utf16_wchar()
169 filter->cache = 0; in mbfl_filt_conv_utf16_wchar()
170 filter->status |= 0x10; in mbfl_filt_conv_utf16_wchar()
174 filter->status &= ~0x100; /* big-endian */ in mbfl_filt_conv_utf16_wchar()
176 filter->status |= 0x100; /* little-endian */ in mbfl_filt_conv_utf16_wchar()
183 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16_wchar()
194 int mbfl_filt_conv_utf16be_wchar(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_utf16be_wchar() argument
198 switch (filter->status) { in mbfl_filt_conv_utf16be_wchar()
200 filter->status = 1; in mbfl_filt_conv_utf16be_wchar()
202 filter->cache |= n; in mbfl_filt_conv_utf16be_wchar()
205 filter->status = 0; in mbfl_filt_conv_utf16be_wchar()
206 n = (filter->cache & 0xff00) | (c & 0xff); in mbfl_filt_conv_utf16be_wchar()
208 filter->cache = ((n & 0x3ff) << 16) + 0x400000; in mbfl_filt_conv_utf16be_wchar()
211 n |= (filter->cache & 0xfff0000) >> 6; in mbfl_filt_conv_utf16be_wchar()
212 filter->cache = 0; in mbfl_filt_conv_utf16be_wchar()
214 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16be_wchar()
218 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16be_wchar()
221 filter->cache = 0; in mbfl_filt_conv_utf16be_wchar()
222 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16be_wchar()
233 int mbfl_filt_conv_wchar_utf16be(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_wchar_utf16be() argument
238 CK((*filter->output_function)((c >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
239 CK((*filter->output_function)(c & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
242 CK((*filter->output_function)((n >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
243 CK((*filter->output_function)(n & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
245 CK((*filter->output_function)((n >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
246 CK((*filter->output_function)(n & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16be()
248 CK(mbfl_filt_conv_illegal_output(c, filter)); in mbfl_filt_conv_wchar_utf16be()
257 int mbfl_filt_conv_utf16le_wchar(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_utf16le_wchar() argument
261 switch (filter->status) { in mbfl_filt_conv_utf16le_wchar()
263 filter->status = 1; in mbfl_filt_conv_utf16le_wchar()
265 filter->cache |= n; in mbfl_filt_conv_utf16le_wchar()
268 filter->status = 0; in mbfl_filt_conv_utf16le_wchar()
269 n = (filter->cache & 0xff) | ((c & 0xff) << 8); in mbfl_filt_conv_utf16le_wchar()
271 filter->cache = ((n & 0x3ff) << 16) + 0x400000; in mbfl_filt_conv_utf16le_wchar()
274 n |= (filter->cache & 0xfff0000) >> 6; in mbfl_filt_conv_utf16le_wchar()
275 filter->cache = 0; in mbfl_filt_conv_utf16le_wchar()
277 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16le_wchar()
281 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16le_wchar()
284 filter->cache = 0; in mbfl_filt_conv_utf16le_wchar()
285 CK((*filter->output_function)(n, filter->data)); in mbfl_filt_conv_utf16le_wchar()
296 int mbfl_filt_conv_wchar_utf16le(int c, mbfl_convert_filter *filter) in mbfl_filt_conv_wchar_utf16le() argument
301 CK((*filter->output_function)(c & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
302 CK((*filter->output_function)((c >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
305 CK((*filter->output_function)(n & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
306 CK((*filter->output_function)((n >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
308 CK((*filter->output_function)(n & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
309 CK((*filter->output_function)((n >> 8) & 0xff, filter->data)); in mbfl_filt_conv_wchar_utf16le()
311 CK(mbfl_filt_conv_illegal_output(c, filter)); in mbfl_filt_conv_wchar_utf16le()