diff options
Diffstat (limited to 'ext/mbstring/libmbfl/filters/unicode_prop.h')
-rw-r--r-- | ext/mbstring/libmbfl/filters/unicode_prop.h | 272 |
1 files changed, 130 insertions, 142 deletions
diff --git a/ext/mbstring/libmbfl/filters/unicode_prop.h b/ext/mbstring/libmbfl/filters/unicode_prop.h index 6eaefbc2e3..1ecf42c556 100644 --- a/ext/mbstring/libmbfl/filters/unicode_prop.h +++ b/ext/mbstring/libmbfl/filters/unicode_prop.h @@ -19,148 +19,136 @@ * Suite 330, Boston, MA 02111-1307 USA * * The authors of this file: PHP3 Internationalization team - * - */ - -/* character property table */ -#define MBFL_CHP_CTL 0x01 -#define MBFL_CHP_DIGIT 0x02 -#define MBFL_CHP_UALPHA 0x04 -#define MBFL_CHP_LALPHA 0x08 -#define MBFL_CHP_MMHQENC 0x10 /* must Q-encoding in MIME Header encoded-word */ -#define MBFL_CHP_MSPECIAL 0x20 /* RFC822 Special characters */ - -/* - * Unicode table */ -static const unsigned char mbfl_charprop_table[] = { -/* NUL 0 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC, -/* SCH 1 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SIX 2 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* EIX 3 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* EOT 4 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* ENQ 5 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* ACK 6 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* BEL 7 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* BS 8 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* HI 9 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* LF 10 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* VI 11 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* FF 12 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* CR 13 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SO 14 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SI 15 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SLE 16 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* CSI 17 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* DC2 18 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* DC3 19 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* DC4 20 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* NAK 21 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SYN 22 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* EIB 23 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* CAN 24 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* EM 25 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SLB 26 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* ESC 27 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* FS 28 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* GS 29 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* RS 30 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* US 31 */ MBFL_CHP_CTL | MBFL_CHP_MMHQENC , -/* SP 32 */ MBFL_CHP_MMHQENC , -/* ! 33 */ 0 , -/* " 34 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* # 35 */ MBFL_CHP_MMHQENC , -/* $ 36 */ MBFL_CHP_MMHQENC , -/* % 37 */ MBFL_CHP_MMHQENC , -/* & 38 */ MBFL_CHP_MMHQENC , -/* ' 39 */ MBFL_CHP_MMHQENC , -/* ( 40 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* ) 41 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* * 42 */ 0 , -/* + 43 */ 0 , -/* , 44 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* - 45 */ 0 , -/* . 46 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* / 47 */ 0 , -/* 0 48 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 1 49 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 2 50 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 3 51 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 4 52 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 5 53 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 6 54 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 7 55 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 8 56 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* 9 57 */ MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC , -/* : 58 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* ; 59 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* < 60 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* = 61 */ 0 , -/* > 62 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* ? 63 */ MBFL_CHP_MMHQENC , -/* @ 64 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* A 65 */ MBFL_CHP_UALPHA , -/* B 66 */ MBFL_CHP_UALPHA , -/* C 67 */ MBFL_CHP_UALPHA , -/* D 68 */ MBFL_CHP_UALPHA , -/* E 69 */ MBFL_CHP_UALPHA , -/* F 70 */ MBFL_CHP_UALPHA , -/* G 71 */ MBFL_CHP_UALPHA , -/* H 72 */ MBFL_CHP_UALPHA , -/* I 73 */ MBFL_CHP_UALPHA , -/* J 74 */ MBFL_CHP_UALPHA , -/* K 75 */ MBFL_CHP_UALPHA , -/* L 76 */ MBFL_CHP_UALPHA , -/* M 77 */ MBFL_CHP_UALPHA , -/* N 78 */ MBFL_CHP_UALPHA , -/* O 79 */ MBFL_CHP_UALPHA , -/* P 80 */ MBFL_CHP_UALPHA , -/* Q 81 */ MBFL_CHP_UALPHA , -/* R 82 */ MBFL_CHP_UALPHA , -/* S 83 */ MBFL_CHP_UALPHA , -/* T 84 */ MBFL_CHP_UALPHA , -/* U 85 */ MBFL_CHP_UALPHA , -/* V 86 */ MBFL_CHP_UALPHA , -/* W 87 */ MBFL_CHP_UALPHA , -/* X 88 */ MBFL_CHP_UALPHA , -/* Y 89 */ MBFL_CHP_UALPHA , -/* Z 90 */ MBFL_CHP_UALPHA , -/* [ 91 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* \ 92 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* ] 93 */ MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL , -/* ^ 94 */ MBFL_CHP_MMHQENC , -/* _ 95 */ MBFL_CHP_MMHQENC , -/* ` 96 */ MBFL_CHP_MMHQENC , -/* a 97 */ MBFL_CHP_LALPHA , -/* b 98 */ MBFL_CHP_LALPHA , -/* c 99 */ MBFL_CHP_LALPHA , -/* d 100 */ MBFL_CHP_LALPHA , -/* e 101 */ MBFL_CHP_LALPHA , -/* f 102 */ MBFL_CHP_LALPHA , -/* g 103 */ MBFL_CHP_LALPHA , -/* h 104 */ MBFL_CHP_LALPHA , -/* i 105 */ MBFL_CHP_LALPHA , -/* j 106 */ MBFL_CHP_LALPHA , -/* k 107 */ MBFL_CHP_LALPHA , -/* l 108 */ MBFL_CHP_LALPHA , -/* m 109 */ MBFL_CHP_LALPHA , -/* n 110 */ MBFL_CHP_LALPHA , -/* o 111 */ MBFL_CHP_LALPHA , -/* p 112 */ MBFL_CHP_LALPHA , -/* q 113 */ MBFL_CHP_LALPHA , -/* r 114 */ MBFL_CHP_LALPHA , -/* s 115 */ MBFL_CHP_LALPHA , -/* t 116 */ MBFL_CHP_LALPHA , -/* u 117 */ MBFL_CHP_LALPHA , -/* v 118 */ MBFL_CHP_LALPHA , -/* w 119 */ MBFL_CHP_LALPHA , -/* x 120 */ MBFL_CHP_LALPHA , -/* y 121 */ MBFL_CHP_LALPHA , -/* z 122 */ MBFL_CHP_LALPHA , -/* { 123 */ MBFL_CHP_MMHQENC , -/* | 124 */ MBFL_CHP_MMHQENC , -/* } 125 */ MBFL_CHP_MMHQENC , -/* ~ 126 */ MBFL_CHP_MMHQENC , -/* DEL 127 */ MBFL_CHP_MMHQENC +/* Should we use QPrint-encoding in MIME Header encoded-word? */ +static const unsigned char mime_char_needs_qencode[] = { +/* NUL 0 */ 1, +/* SCH 1 */ 1, +/* SIX 2 */ 1, +/* EIX 3 */ 1, +/* EOT 4 */ 1, +/* ENQ 5 */ 1, +/* ACK 6 */ 1, +/* BEL 7 */ 1, +/* BS 8 */ 1, +/* HI 9 */ 1, +/* LF 10 */ 1, +/* VI 11 */ 1, +/* FF 12 */ 1, +/* CR 13 */ 1, +/* SO 14 */ 1, +/* SI 15 */ 1, +/* SLE 16 */ 1, +/* CSI 17 */ 1, +/* DC2 18 */ 1, +/* DC3 19 */ 1, +/* DC4 20 */ 1, +/* NAK 21 */ 1, +/* SYN 22 */ 1, +/* EIB 23 */ 1, +/* CAN 24 */ 1, +/* EM 25 */ 1, +/* SLB 26 */ 1, +/* ESC 27 */ 1, +/* FS 28 */ 1, +/* GS 29 */ 1, +/* RS 30 */ 1, +/* US 31 */ 1, +/* SP 32 */ 1, +/* ! 33 */ 0, +/* " 34 */ 1, +/* # 35 */ 1, +/* $ 36 */ 1, +/* % 37 */ 1, +/* & 38 */ 1, +/* ' 39 */ 1, +/* ( 40 */ 1, +/* ) 41 */ 1, +/* * 42 */ 0, +/* + 43 */ 0, +/* , 44 */ 1, +/* - 45 */ 0, +/* . 46 */ 1, +/* / 47 */ 0, +/* 0 48 */ 1, +/* 1 49 */ 1, +/* 2 50 */ 1, +/* 3 51 */ 1, +/* 4 52 */ 1, +/* 5 53 */ 1, +/* 6 54 */ 1, +/* 7 55 */ 1, +/* 8 56 */ 1, +/* 9 57 */ 1, +/* : 58 */ 1, +/* ; 59 */ 1, +/* < 60 */ 1, +/* = 61 */ 0, +/* > 62 */ 1, +/* ? 63 */ 1, +/* @ 64 */ 1, +/* A 65 */ 0, +/* B 66 */ 0, +/* C 67 */ 0, +/* D 68 */ 0, +/* E 69 */ 0, +/* F 70 */ 0, +/* G 71 */ 0, +/* H 72 */ 0, +/* I 73 */ 0, +/* J 74 */ 0, +/* K 75 */ 0, +/* L 76 */ 0, +/* M 77 */ 0, +/* N 78 */ 0, +/* O 79 */ 0, +/* P 80 */ 0, +/* Q 81 */ 0, +/* R 82 */ 0, +/* S 83 */ 0, +/* T 84 */ 0, +/* U 85 */ 0, +/* V 86 */ 0, +/* W 87 */ 0, +/* X 88 */ 0, +/* Y 89 */ 0, +/* Z 90 */ 0, +/* [ 91 */ 1, +/* \ 92 */ 1, +/* ] 93 */ 1, +/* ^ 94 */ 1, +/* _ 95 */ 1, +/* ` 96 */ 1, +/* a 97 */ 0, +/* b 98 */ 0, +/* c 99 */ 0, +/* d 100 */ 0, +/* e 101 */ 0, +/* f 102 */ 0, +/* g 103 */ 0, +/* h 104 */ 0, +/* i 105 */ 0, +/* j 106 */ 0, +/* k 107 */ 0, +/* l 108 */ 0, +/* m 109 */ 0, +/* n 110 */ 0, +/* o 111 */ 0, +/* p 112 */ 0, +/* q 113 */ 0, +/* r 114 */ 0, +/* s 115 */ 0, +/* t 116 */ 0, +/* u 117 */ 0, +/* v 118 */ 0, +/* w 119 */ 0, +/* x 120 */ 0, +/* y 121 */ 0, +/* z 122 */ 0, +/* { 123 */ 1, +/* | 124 */ 1, +/* } 125 */ 1, +/* ~ 126 */ 1, +/* DEL 127 */ 1 }; |