Thread: [KoCo-CVS] [Commit] cjkcodecs/src _big5.c _cp949.c _cp950.c _euc_kr.c _gb18030.c _gb2312.c _gbk.c _s
Brought to you by:
perky
From: Hye-Shik C. <pe...@us...> - 2003-05-22 05:36:30
|
perky 03/05/21 22:36:29 Modified: src _big5.c _cp949.c _cp950.c _euc_kr.c _gb18030.c _gb2312.c _gbk.c _shift_jis.c codeccommon.h Log: More macroes. Revision Changes Path 1.3 +5 -5 cjkcodecs/src/_big5.c Index: _big5.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_big5.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- _big5.c 21 May 2003 23:52:11 -0000 1.2 +++ _big5.c 22 May 2003 05:36:28 -0000 1.3 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _big5.c,v 1.2 2003/05/21 23:52:11 perky Exp $ + * $Id: _big5.c,v 1.3 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -50,11 +50,11 @@ RESERVE_OUTBUF(2) - TRYMAP_ENC(&big5encmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(big5, code, c) else return 1; - (*outbuf)[0] = (code >> 8) | 0x80; - (*outbuf)[1] = (code & 0xFF) | 0x80; + (*outbuf)[0] = code >> 8; + (*outbuf)[1] = code & 0xFF; NEXT(1, 2) } @@ -76,7 +76,7 @@ } RESERVE_INBUF(2) - TRYMAP_DEC(&big5decmap[c], code, (*inbuf)[1]) + TRYMAP_DEC(big5, code, c, (*inbuf)[1]) else return 2; **outbuf = code; 1.7 +4 -4 cjkcodecs/src/_cp949.c Index: _cp949.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_cp949.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- _cp949.c 21 May 2003 23:52:12 -0000 1.6 +++ _cp949.c 22 May 2003 05:36:28 -0000 1.7 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _cp949.c,v 1.6 2003/05/21 23:52:12 perky Exp $ + * $Id: _cp949.c,v 1.7 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -50,7 +50,7 @@ UCS4INVALID(c) RESERVE_OUTBUF(2) - TRYMAP_ENC(&cp949encmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(cp949, code, c) else return 1; (*outbuf)[0] = (code >> 8) | 0x80; @@ -79,8 +79,8 @@ } RESERVE_INBUF(2) - TRYMAP_DEC(&ksx1001decmap[c & 0x7f], code, (*inbuf)[1] ^ 0x80) - else TRYMAP_DEC(&cp949extdecmap[c], code, (*inbuf)[1]) + TRYMAP_DEC(ksx1001, code, c ^ 0x80, (*inbuf)[1] ^ 0x80) + else TRYMAP_DEC(cp949ext, code, c, (*inbuf)[1]) else return 2; **outbuf = code; 1.3 +7 -7 cjkcodecs/src/_cp950.c Index: _cp950.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_cp950.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- _cp950.c 21 May 2003 23:52:12 -0000 1.2 +++ _cp950.c 22 May 2003 05:36:28 -0000 1.3 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _cp950.c,v 1.2 2003/05/21 23:52:12 perky Exp $ + * $Id: _cp950.c,v 1.3 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -51,12 +51,12 @@ UCS4INVALID(c) RESERVE_OUTBUF(2) - TRYMAP_ENC(&cp950extencmap[c >> 8], code, c & 0xff) - else TRYMAP_ENC(&big5encmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(cp950ext, code, c) + else TRYMAP_ENC(big5, code, c) else return 1; - (*outbuf)[0] = (code >> 8) | 0x80; - (*outbuf)[1] = (code & 0xFF); + (*outbuf)[0] = code >> 8; + (*outbuf)[1] = code & 0xFF; NEXT(1, 2) } @@ -79,8 +79,8 @@ RESERVE_INBUF(2) - TRYMAP_DEC(&cp950extdecmap[c & 0x7f], code, (*inbuf)[1]) - else TRYMAP_DEC(&cp950extdecmap[c & 0x7f], code, (*inbuf)[1]) + TRYMAP_DEC(cp950ext, code, c, (*inbuf)[1]) + else TRYMAP_DEC(big5, code, c, (*inbuf)[1]) else return 2; **outbuf = code; 1.10 +3 -3 cjkcodecs/src/_euc_kr.c Index: _euc_kr.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_euc_kr.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- _euc_kr.c 21 May 2003 23:52:12 -0000 1.9 +++ _euc_kr.c 22 May 2003 05:36:28 -0000 1.10 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _euc_kr.c,v 1.9 2003/05/21 23:52:12 perky Exp $ + * $Id: _euc_kr.c,v 1.10 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -49,7 +49,7 @@ UCS4INVALID(c) RESERVE_OUTBUF(2) - TRYMAP_ENC(&cp949encmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(cp949, code, c) else return 1; if (code & 0x8000) /* MSB set: CP949 */ @@ -79,7 +79,7 @@ RESERVE_INBUF(2) - TRYMAP_DEC(&ksx1001decmap[c & 0x7f], code, (*inbuf)[1] ^ 0x80) + TRYMAP_DEC(ksx1001, code, c ^ 0x80, (*inbuf)[1] ^ 0x80) else return 2; **outbuf = code; 1.4 +6 -6 cjkcodecs/src/_gb18030.c Index: _gb18030.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_gb18030.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- _gb18030.c 21 May 2003 23:52:12 -0000 1.3 +++ _gb18030.c 22 May 2003 05:36:28 -0000 1.4 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _gb18030.c,v 1.3 2003/05/21 23:52:12 perky Exp $ + * $Id: _gb18030.c,v 1.4 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -75,8 +75,8 @@ RESERVE_OUTBUF(2) GBK_PREENCODE(c, code) - else TRYMAP_ENC(&gbcommonencmap[c >> 8], code, c && 0xff) - else TRYMAP_ENC(&gb18030extencmap[c >> 8], code, c && 0xff) { + else TRYMAP_ENC(gbcommon, code, c) + else TRYMAP_ENC(gb18030ext, code, c) { const struct _gb18030_to_unibmp_ranges *utrrange; RESERVE_OUTBUF(4) @@ -178,9 +178,9 @@ } GBK_PREDECODE(c, c2, code) - else TRYMAP_DEC(&gb2312decmap[c & 0x7f], code, c2 ^ 0x80) - else TRYMAP_DEC(&gbkextdecmap[c], code, c2) - else TRYMAP_DEC(&gb18030extdecmap[c], code, c2) + else TRYMAP_DEC(gb2312, code, c ^ 0x80, c2 ^ 0x80) + else TRYMAP_DEC(gbkext, code, c, c2) + else TRYMAP_DEC(gb18030ext, code, c, c2) else return 2; **outbuf = code; 1.5 +3 -3 cjkcodecs/src/_gb2312.c Index: _gb2312.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_gb2312.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- _gb2312.c 21 May 2003 23:52:12 -0000 1.4 +++ _gb2312.c 22 May 2003 05:36:28 -0000 1.5 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _gb2312.c,v 1.4 2003/05/21 23:52:12 perky Exp $ + * $Id: _gb2312.c,v 1.5 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -49,7 +49,7 @@ UCS4INVALID(c) RESERVE_OUTBUF(2) - TRYMAP_ENC(&gbcommonencmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(gbcommon, code, c) else return 1; if (code & 0x8000) /* MSB set: GBK */ @@ -78,7 +78,7 @@ } RESERVE_INBUF(2) - TRYMAP_DEC(&gb2312decmap[c & 0x7f], code, (*inbuf)[1] ^ 0x80) + TRYMAP_DEC(gb2312, code, c ^ 0x80, (*inbuf)[1] ^ 0x80) else return 2; **outbuf = code; 1.4 +4 -4 cjkcodecs/src/_gbk.c Index: _gbk.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_gbk.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- _gbk.c 21 May 2003 23:52:12 -0000 1.3 +++ _gbk.c 22 May 2003 05:36:28 -0000 1.4 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _gbk.c,v 1.3 2003/05/21 23:52:12 perky Exp $ + * $Id: _gbk.c,v 1.4 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -53,7 +53,7 @@ RESERVE_OUTBUF(2) GBK_PREENCODE(c, code) - else TRYMAP_ENC(&gbcommonencmap[c >> 8], code, c & 0xff) + else TRYMAP_ENC(gbcommon, code, c) else return 1; (*outbuf)[0] = (code >> 8) | 0x80; @@ -84,8 +84,8 @@ RESERVE_INBUF(2) GBK_PREDECODE(c, (*inbuf)[1], code) - else TRYMAP_DEC(&gb2312decmap[c & 0x7f], code, (*inbuf)[1] ^ 0x80) - else TRYMAP_DEC(&gbkextdecmap[c], code, (*inbuf)[1]) + else TRYMAP_DEC(gb2312, code, c ^ 0x80, (*inbuf)[1] ^ 0x80) + else TRYMAP_DEC(gbkext, code, c, (*inbuf)[1]) else return 2; **outbuf = code; 1.2 +3 -3 cjkcodecs/src/_shift_jis.c Index: _shift_jis.c =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/_shift_jis.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- _shift_jis.c 22 May 2003 04:18:21 -0000 1.1 +++ _shift_jis.c 22 May 2003 05:36:28 -0000 1.2 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: _shift_jis.c,v 1.1 2003/05/22 04:18:21 perky Exp $ + * $Id: _shift_jis.c,v 1.2 2003/05/22 05:36:28 perky Exp $ */ #include "codeccommon.h" @@ -57,7 +57,7 @@ RESERVE_OUTBUF(2) if (code == NOCHAR) { - TRYMAP_ENC(&jisxcommonencmap[c >> 8], code, c & 0xff) + TRYMAP_ENC(jisxcommon, code, c) else if (c >= 0xe000 && c < 0xe758) { /* user-defined area */ c1 = (Py_UNICODE)(c - 0xe000) / 188; @@ -106,7 +106,7 @@ c1 = (2 * c1 + (c2 < 0x5e ? 0 : 1) + 0x21); c2 = (c2 < 0x5e ? c2 : c2 - 0x5e) + 0x21; - TRYMAP_DEC(&jisx0208decmap[c1], code, c2) + TRYMAP_DEC(jisx0208, code, c1, c2) else return 2; } else if (c >= 0xf0 && c <= 0xf9) { unsigned char c2; 1.8 +7 -3 cjkcodecs/src/codeccommon.h Index: codeccommon.h =================================================================== RCS file: /cvsroot/koco/cjkcodecs/src/codeccommon.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- codeccommon.h 22 May 2003 04:18:21 -0000 1.7 +++ codeccommon.h 22 May 2003 05:36:28 -0000 1.8 @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $Id: codeccommon.h,v 1.7 2003/05/22 04:18:21 perky Exp $ + * $Id: codeccommon.h,v 1.8 2003/05/22 05:36:28 perky Exp $ */ #include "Python.h" @@ -130,14 +130,18 @@ if (outleft < (n)) \ return MBERR_TOOSMALL; -#define TRYMAP_ENC(m, assi, val) \ +#define _TRYMAP_ENC(m, assi, val) \ if ((m)->map != NULL && (val) >= (m)->bottom && \ (val)<= (m)->top && ((assi) = (m)->map[(val) - \ (m)->bottom]) != NOCHAR) ; -#define TRYMAP_DEC(m, assi, val) \ +#define TRYMAP_ENC(charset, assi, uni) \ + _TRYMAP_ENC(&charset##encmap[uni >> 8], assi, uni & 0xff) +#define _TRYMAP_DEC(m, assi, val) \ if ((m)->map != NULL && (val) >= (m)->bottom && \ (val)<= (m)->top && ((assi) = (m)->map[(val) - \ (m)->bottom]) != UNIINV) ; +#define TRYMAP_DEC(charset, assi, c1, c2) \ + _TRYMAP_DEC(&charset##decmap[c1], assi, c2) static int importmap(PyObject *mod, const char *symbol, |