version 1.11, 1999/08/05 20:41:29
|
version 1.12, 1999/08/09 15:57:09
|
Line 18 extern "C" {
|
Line 18 extern "C" {
|
/** |
/** |
* A few macros needed to help building the parser. |
* A few macros needed to help building the parser. |
*/ |
*/ |
|
/* #define UNICODE */ |
|
|
|
#ifdef UNICODE |
|
typedef unsigned long CHARVAL; |
|
|
|
#define NEXTCHARVAL(p) (unsigned long) \ |
|
((*(p) == 0) ? (unsigned long) 0 : \ |
|
((*(p) < 0x80) ? (unsigned long) (*(p)++) : \ |
|
(*(p) < 0xC0) ? (unsigned long) 0 : \ |
|
(*(p) < 0xE0) ? ((((unsigned long) *(p)++) << 6) + (*(p)++ & 0x3F)) : \ |
|
(*(p) < 0xF0) ? (((((unsigned long) *(p)++) << 6) + (*(p)++ & 0x3F)) << 6 + \ |
|
(*(p)++ & 0x3F)) : \ |
|
(*(p) < 0xF8) ? ((((((unsigned long) *(p)++) << 6) + (*(p)++ & 0x3F)) << 6 + \ |
|
(*(p)++ & 0x3F)) << 6 + (*(p)++ & 0x3F)) : 0)) |
|
#else |
|
typedef unsigned char CHARVAL; |
|
|
|
#define NEXTCHARVAL(p) (unsigned long) *(p)++; |
|
#endif |
|
|
#ifdef UNICODE |
#ifdef UNICODE |
/************************************************************************ |
/************************************************************************ |
Line 402 extern "C" {
|
Line 421 extern "C" {
|
#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c)) |
#define IS_LETTER(c) (IS_BASECHAR(c) || IS_IDEOGRAPHIC(c)) |
|
|
#else |
#else |
#ifndef USE_UTF_8 |
|
/************************************************************************ |
/************************************************************************ |
* * |
* * |
* 8bits / ISO-Latin version of the macros. * |
* 8bits / ISO-Latin version of the macros. * |
Line 453 extern "C" {
|
Line 471 extern "C" {
|
*/ |
*/ |
#define IS_EXTENDER(c) ((c) == 0xb7) |
#define IS_EXTENDER(c) ((c) == 0xb7) |
|
|
#else /* USE_UTF_8 */ |
|
/************************************************************************ |
|
* * |
|
* 8bits / UTF-8 version of the macros. * |
|
* * |
|
************************************************************************/ |
|
|
|
TODO !!! |
|
#endif /* USE_UTF_8 */ |
|
#endif /* !UNICODE */ |
#endif /* !UNICODE */ |
|
|
/* |
/* |