| utf8.h | | utf8.h | |
| | | | |
| skipping to change at line 26 | | skipping to change at line 26 | |
| * | | * | |
| * Author: Mark Crispin | | * Author: Mark Crispin | |
| * Networks and Distributed Computing | | * Networks and Distributed Computing | |
| * Computing & Communications | | * Computing & Communications | |
| * University of Washington | | * University of Washington | |
| * Administration Building, AG-44 | | * Administration Building, AG-44 | |
| * Seattle, WA 98195 | | * Seattle, WA 98195 | |
| * Internet: MRC@CAC.Washington.EDU | | * Internet: MRC@CAC.Washington.EDU | |
| * | | * | |
| * Date: 11 June 1997 | | * Date: 11 June 1997 | |
|
| * Last Edited: 9 October 2007 | | * Last Edited: 14 November 2007 | |
| */ | | */ | |
| /* UTF-8 size and conversion routines from UCS-2 values (thus in the BMP). | | /* UTF-8 size and conversion routines from UCS-2 values (thus in the BMP). | |
| * Don't use these if UTF-16 data (surrogate pairs) are an issue. | | * Don't use these if UTF-16 data (surrogate pairs) are an issue. | |
| * For UCS-4 values, use the utf8_size() and utf8_put() functions. | | * For UCS-4 values, use the utf8_size() and utf8_put() functions. | |
| */ | | */ | |
| | | | |
| #define UTF8_SIZE_BMP(c) ((c & 0xff80) ? ((c & 0xf800) ? 3 : 2) : 1) | | #define UTF8_SIZE_BMP(c) ((c & 0xff80) ? ((c & 0xf800) ? 3 : 2) : 1) | |
| | | | |
| #define UTF8_PUT_BMP(b,c) { \ | | #define UTF8_PUT_BMP(b,c) { \ | |
| if (c & 0xff80) { /* non-ASCII? */ \ | | if (c & 0xff80) { /* non-ASCII? */ \ | |
| | | | |
| skipping to change at line 522 | | skipping to change at line 522 | |
| unsigned long errch,long iso2022jp); | | unsigned long errch,long iso2022jp); | |
| long ucs4_rmaptext (unsigned long *ucs4,unsigned long len,unsigned short *r
map, | | long ucs4_rmaptext (unsigned long *ucs4,unsigned long len,unsigned short *r
map, | |
| SIZEDTEXT *ret,unsigned long errch); | | SIZEDTEXT *ret,unsigned long errch); | |
| long ucs4_rmaplen (unsigned long *ucs4,unsigned long len,unsigned short *rm
ap, | | long ucs4_rmaplen (unsigned long *ucs4,unsigned long len,unsigned short *rm
ap, | |
| unsigned long errch); | | unsigned long errch); | |
| long ucs4_rmapbuf (unsigned char *t,unsigned long *ucs4,unsigned long len, | | long ucs4_rmapbuf (unsigned char *t,unsigned long *ucs4,unsigned long len, | |
| unsigned short *rmap,unsigned long errch); | | unsigned short *rmap,unsigned long errch); | |
| unsigned long utf8_get (unsigned char **s,unsigned long *i); | | unsigned long utf8_get (unsigned char **s,unsigned long *i); | |
| unsigned long utf8_get_raw (unsigned char **s,unsigned long *i); | | unsigned long utf8_get_raw (unsigned char **s,unsigned long *i); | |
| unsigned long ucs4_cs_get (CHARSET *cs,unsigned char **s,unsigned long *i); | | unsigned long ucs4_cs_get (CHARSET *cs,unsigned char **s,unsigned long *i); | |
|
| | | unsigned long *utf8_csvalidmap (char *charsets[]); | |
| const CHARSET *utf8_infercharset (SIZEDTEXT *src); | | const CHARSET *utf8_infercharset (SIZEDTEXT *src); | |
| long utf8_validate (unsigned char *s,unsigned long i); | | long utf8_validate (unsigned char *s,unsigned long i); | |
| void utf8_text_1byte0 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t
de); | | void utf8_text_1byte0 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t
de); | |
| void utf8_text_1byte (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | | void utf8_text_1byte (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | |
| ucs4de_t de); | | ucs4de_t de); | |
| void utf8_text_1byte8 (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv
, | | void utf8_text_1byte8 (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv
, | |
| ucs4de_t de); | | ucs4de_t de); | |
| void utf8_text_euc (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | | void utf8_text_euc (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | |
| ucs4de_t de); | | ucs4de_t de); | |
| void utf8_text_dbyte (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | | void utf8_text_dbyte (SIZEDTEXT *text,SIZEDTEXT *ret,void *tab,ucs4cn_t cv, | |
| | | | |
End of changes. 2 change blocks. |
| 1 lines changed or deleted | | 2 lines changed or added | |
|