@@ -52,49 +52,63 @@ public final class CharTypes {
5252 }
5353 }
5454
55- public final static boolean [] specicalFlags_doubleQuotes = new boolean [128 ];
56- public final static boolean [] specicalFlags_singleQuotes = new boolean [128 ];
57-
58- public static boolean isSpecial_doubleQuotes (char ch ) {
59- return ch < specicalFlags_doubleQuotes .length && specicalFlags_doubleQuotes [ch ];
60- }
55+ public final static byte [] specicalFlags_doubleQuotes = new byte [256 ];
56+ public final static byte [] specicalFlags_singleQuotes = new byte [256 ];
6157
6258 public final static char [] replaceChars = new char [128 ];
6359 static {
64- specicalFlags_doubleQuotes ['\0' ] = true ;
65- specicalFlags_doubleQuotes ['\1' ] = true ;
66- specicalFlags_doubleQuotes ['\2' ] = true ;
67- specicalFlags_doubleQuotes ['\3' ] = true ;
68- specicalFlags_doubleQuotes ['\4' ] = true ;
69- specicalFlags_doubleQuotes ['\5' ] = true ;
70- specicalFlags_doubleQuotes ['\6' ] = true ;
71- specicalFlags_doubleQuotes ['\7' ] = true ;
72- specicalFlags_doubleQuotes ['\b' ] = true ; // 8
73- specicalFlags_doubleQuotes ['\t' ] = true ; // 9
74- specicalFlags_doubleQuotes ['\n' ] = true ; // 10
75- specicalFlags_doubleQuotes ['\u000B' ] = true ; // 11
76- specicalFlags_doubleQuotes ['\f' ] = true ;
77- specicalFlags_doubleQuotes ['\r' ] = true ;
78- specicalFlags_doubleQuotes ['\"' ] = true ;
79- specicalFlags_doubleQuotes ['\\' ] = true ;
80-
81- specicalFlags_singleQuotes ['\0' ] = true ;
82- specicalFlags_singleQuotes ['\1' ] = true ;
83- specicalFlags_singleQuotes ['\2' ] = true ;
84- specicalFlags_singleQuotes ['\3' ] = true ;
85- specicalFlags_singleQuotes ['\4' ] = true ;
86- specicalFlags_singleQuotes ['\5' ] = true ;
87- specicalFlags_singleQuotes ['\6' ] = true ;
88- specicalFlags_singleQuotes ['\7' ] = true ;
89- specicalFlags_singleQuotes ['\b' ] = true ; // 8
90- specicalFlags_singleQuotes ['\t' ] = true ; // 9
91- specicalFlags_singleQuotes ['\n' ] = true ; // 10
92- specicalFlags_singleQuotes ['\u000B' ] = true ; // 11
93- specicalFlags_singleQuotes ['\f' ] = true ; // 12
94- specicalFlags_singleQuotes ['\r' ] = true ;
95- specicalFlags_singleQuotes ['\'' ] = true ;
96- specicalFlags_singleQuotes ['\\' ] = true ;
60+ specicalFlags_doubleQuotes ['\0' ] = 1 ;
61+ specicalFlags_doubleQuotes ['\1' ] = 1 ;
62+ specicalFlags_doubleQuotes ['\2' ] = 1 ;
63+ specicalFlags_doubleQuotes ['\3' ] = 1 ;
64+ specicalFlags_doubleQuotes ['\4' ] = 1 ;
65+ specicalFlags_doubleQuotes ['\5' ] = 1 ;
66+ specicalFlags_doubleQuotes ['\6' ] = 1 ;
67+ specicalFlags_doubleQuotes ['\7' ] = 1 ;
68+ specicalFlags_doubleQuotes ['\b' ] = 1 ; // 8
69+ specicalFlags_doubleQuotes ['\t' ] = 1 ; // 9
70+ specicalFlags_doubleQuotes ['\n' ] = 1 ; // 10
71+ specicalFlags_doubleQuotes ['\u000B' ] = 1 ; // 11
72+ specicalFlags_doubleQuotes ['\f' ] = 1 ;
73+ specicalFlags_doubleQuotes ['\r' ] = 1 ;
74+ specicalFlags_doubleQuotes ['\"' ] = 1 ;
75+ specicalFlags_doubleQuotes ['\\' ] = 1 ;
9776
77+ specicalFlags_singleQuotes ['\0' ] = 1 ;
78+ specicalFlags_singleQuotes ['\1' ] = 1 ;
79+ specicalFlags_singleQuotes ['\2' ] = 1 ;
80+ specicalFlags_singleQuotes ['\3' ] = 1 ;
81+ specicalFlags_singleQuotes ['\4' ] = 1 ;
82+ specicalFlags_singleQuotes ['\5' ] = 1 ;
83+ specicalFlags_singleQuotes ['\6' ] = 1 ;
84+ specicalFlags_singleQuotes ['\7' ] = 1 ;
85+ specicalFlags_singleQuotes ['\b' ] = 1 ; // 8
86+ specicalFlags_singleQuotes ['\t' ] = 1 ; // 9
87+ specicalFlags_singleQuotes ['\n' ] = 1 ; // 10
88+ specicalFlags_singleQuotes ['\u000B' ] = 1 ; // 11
89+ specicalFlags_singleQuotes ['\f' ] = 1 ; // 12
90+ specicalFlags_singleQuotes ['\r' ] = 1 ; // 13
91+ specicalFlags_singleQuotes ['\u000E' ] = 4 ; // 14
92+ specicalFlags_singleQuotes ['\u000F' ] = 4 ; // 15
93+ specicalFlags_singleQuotes ['\u0010' ] = 4 ; // 16
94+ specicalFlags_singleQuotes ['\u0011' ] = 4 ; // 17
95+ specicalFlags_singleQuotes ['\u0012' ] = 4 ; // 18
96+ specicalFlags_singleQuotes ['\u0013' ] = 4 ; // 19
97+ specicalFlags_singleQuotes ['\u0014' ] = 4 ; // 20
98+ specicalFlags_singleQuotes ['\u0015' ] = 4 ; // 21
99+ specicalFlags_singleQuotes ['\u0016' ] = 4 ; // 22
100+ specicalFlags_singleQuotes ['\u0017' ] = 4 ; // 23
101+ specicalFlags_singleQuotes ['\u0018' ] = 4 ; // 24
102+ specicalFlags_singleQuotes ['\u0019' ] = 4 ; // 25
103+ specicalFlags_singleQuotes ['\u0020' ] = 4 ; // 26
104+ specicalFlags_singleQuotes ['\\' ] = 1 ;
105+ specicalFlags_singleQuotes ['\'' ] = 1 ;
106+
107+ for (int i = 0x7F ; i <= 0xA0 ; ++i ) {
108+ specicalFlags_doubleQuotes [i ] = 4 ;
109+ specicalFlags_singleQuotes [i ] = 4 ;
110+ }
111+
98112 replaceChars ['\0' ] = '0' ;
99113 replaceChars ['\1' ] = '1' ;
100114 replaceChars ['\2' ] = '2' ;
0 commit comments