Lines Matching refs:psenc
102 _ZWState * __restrict psenc)
105 _DIAGASSERT(psenc != NULL);
107 psenc->chlen = 0;
108 psenc->charset = NONE;
114 void *__restrict pspriv, const _ZWState * __restrict psenc)
118 _DIAGASSERT(psenc != NULL);
120 memcpy(pspriv, (const void *)psenc, sizeof(*psenc));
126 _ZWState * __restrict psenc, const void * __restrict pspriv)
129 _DIAGASSERT(psenc != NULL);
132 memcpy((void *)psenc, pspriv, sizeof(*psenc));
138 _ZWState * __restrict psenc, size_t * __restrict nresult)
147 _DIAGASSERT(psenc != NULL);
151 _citrus_ZW_init_state(ei, psenc);
168 psenc->ch[psenc->chlen++] = ch; \
172 switch (psenc->charset) {
174 switch (psenc->chlen) {
177 switch (psenc->ch[0]) {
179 psenc->charset = NONE;
187 ch = (unsigned char)psenc->ch[0];
191 psenc->chlen = 0;
194 if (psenc->chlen != 0)
197 ch = (unsigned char)psenc->ch[0];
200 psenc->charset = ASCII;
202 psenc->chlen = 0;
205 psenc->charset = AMBIGIOUS;
206 psenc->chlen = 0;
209 if (psenc->chlen != 0)
212 if (psenc->ch[0] != 'W') {
213 psenc->charset = ASCII;
217 psenc->charset = GB2312;
218 psenc->chlen = 0;
221 switch (psenc->chlen) {
224 ch = (unsigned char)psenc->ch[0];
226 psenc->charset = NONE;
228 psenc->chlen = 0;
231 psenc->charset = NONE;
232 psenc->chlen = 0;
238 if (psenc->ch[0] == ' ') {
239 ch = (unsigned char)psenc->ch[1];
241 psenc->chlen = 0;
243 } else if (psenc->ch[0] == '#') {
244 ch = (unsigned char)psenc->ch[1];
246 psenc->charset = NONE;
248 psenc->chlen = 0;
252 psenc->chlen = 0;
256 ch = (unsigned char)psenc->ch[0];
260 ch = (unsigned char)psenc->ch[1];
267 psenc->chlen = 0;
289 _ZWState * __restrict psenc, size_t * __restrict nresult)
295 _DIAGASSERT(psenc != NULL);
298 if (psenc->chlen != 0)
302 switch (psenc->charset) {
305 psenc->ch[psenc->chlen++] = ch;
310 psenc->ch[psenc->chlen++] = 'z';
311 psenc->ch[psenc->chlen++] = 'W';
312 psenc->ch[psenc->chlen++] = ' ';
313 psenc->ch[psenc->chlen++] = ch;
314 psenc->charset = GB2312;
322 psenc->ch[psenc->chlen++] = '\n';
323 psenc->ch[psenc->chlen++] = '\0';
324 psenc->charset = NONE;
326 psenc->ch[psenc->chlen++] = '#';
327 psenc->ch[psenc->chlen++] = '\n';
328 psenc->charset = NONE;
330 psenc->ch[psenc->chlen++] = ' ';
331 psenc->ch[psenc->chlen++] = ch;
338 switch (psenc->charset) {
343 psenc->ch[psenc->chlen++] = 'z';
344 psenc->ch[psenc->chlen++] = 'W';
345 psenc->charset = GB2312;
354 psenc->ch[psenc->chlen++] = ch;
358 psenc->ch[psenc->chlen++] = ch;
368 memcpy(s, psenc->ch, psenc->chlen);
369 *nresult = psenc->chlen;
370 psenc->chlen = 0;
379 _ZWState * __restrict psenc, size_t * __restrict nresult)
383 _DIAGASSERT(psenc != NULL);
386 if (psenc->chlen != 0)
388 switch (psenc->charset) {
392 psenc->ch[psenc->chlen++] = '\n';
393 psenc->charset = NONE;
396 *nresult = psenc->chlen;
397 if (psenc->chlen > 0) {
398 memcpy(s, psenc->ch, psenc->chlen);
399 psenc->chlen = 0;
412 _ZWState * __restrict psenc, int * __restrict rstate)
415 _DIAGASSERT(psenc != NULL);
418 switch (psenc->charset) {
420 if (psenc->chlen != 0)
425 if (psenc->chlen != 0)
431 switch (psenc->chlen) {
436 *rstate = (psenc->ch[0] == '#')