00001
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <config.h>
00022
00023 #include "stringutils.h"
00024
00025 namespace Xapian {
00026 namespace Internal {
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 const unsigned char is_tab[('\x20' == ' ') ? 256 : -1] = {
00037 0,
00038 0,
00039 0,
00040 0,
00041 0,
00042 0,
00043 0,
00044 0,
00045 0,
00046 IS_SPACE,
00047 IS_SPACE,
00048 0,
00049 IS_SPACE,
00050 IS_SPACE,
00051 0,
00052 0,
00053 0,
00054 0,
00055 0,
00056 0,
00057 0,
00058 0,
00059 0,
00060 0,
00061 0,
00062 0,
00063 0,
00064 0,
00065 0,
00066 0,
00067 0,
00068 0,
00069 IS_SPACE,
00070 0,
00071 0,
00072 0,
00073 0,
00074 0,
00075 0,
00076 0,
00077 0,
00078 0,
00079 0,
00080 IS_SIGN,
00081 0,
00082 IS_SIGN,
00083 0,
00084 0,
00085 IS_DIGIT|IS_HEX,
00086 IS_DIGIT|IS_HEX,
00087 IS_DIGIT|IS_HEX,
00088 IS_DIGIT|IS_HEX,
00089 IS_DIGIT|IS_HEX,
00090 IS_DIGIT|IS_HEX,
00091 IS_DIGIT|IS_HEX,
00092 IS_DIGIT|IS_HEX,
00093 IS_DIGIT|IS_HEX,
00094 IS_DIGIT|IS_HEX,
00095 0,
00096 0,
00097 0,
00098 0,
00099 0,
00100 0,
00101 0,
00102 IS_UPPER|IS_HEX,
00103 IS_UPPER|IS_HEX,
00104 IS_UPPER|IS_HEX,
00105 IS_UPPER|IS_HEX,
00106 IS_UPPER|IS_HEX,
00107 IS_UPPER|IS_HEX,
00108 IS_UPPER,
00109 IS_UPPER,
00110 IS_UPPER,
00111 IS_UPPER,
00112 IS_UPPER,
00113 IS_UPPER,
00114 IS_UPPER,
00115 IS_UPPER,
00116 IS_UPPER,
00117 IS_UPPER,
00118 IS_UPPER,
00119 IS_UPPER,
00120 IS_UPPER,
00121 IS_UPPER,
00122 IS_UPPER,
00123 IS_UPPER,
00124 IS_UPPER,
00125 IS_UPPER,
00126 IS_UPPER,
00127 IS_UPPER,
00128 0,
00129 0,
00130 0,
00131 0,
00132 0,
00133 0,
00134 IS_LOWER|IS_HEX,
00135 IS_LOWER|IS_HEX,
00136 IS_LOWER|IS_HEX,
00137 IS_LOWER|IS_HEX,
00138 IS_LOWER|IS_HEX,
00139 IS_LOWER|IS_HEX,
00140 IS_LOWER,
00141 IS_LOWER,
00142 IS_LOWER,
00143 IS_LOWER,
00144 IS_LOWER,
00145 IS_LOWER,
00146 IS_LOWER,
00147 IS_LOWER,
00148 IS_LOWER,
00149 IS_LOWER,
00150 IS_LOWER,
00151 IS_LOWER,
00152 IS_LOWER,
00153 IS_LOWER,
00154 IS_LOWER,
00155 IS_LOWER,
00156 IS_LOWER,
00157 IS_LOWER,
00158 IS_LOWER,
00159 IS_LOWER,
00160 0,
00161 0,
00162 0,
00163 0,
00164 0,
00165 0,
00166 0,
00167 0,
00168 0,
00169 0,
00170 0,
00171 0,
00172 0,
00173 0,
00174 0,
00175 0,
00176 0,
00177 0,
00178 0,
00179 0,
00180 0,
00181 0,
00182 0,
00183 0,
00184 0,
00185 0,
00186 0,
00187 0,
00188 0,
00189 0,
00190 0,
00191 0,
00192 0,
00193 0,
00194 0,
00195 0,
00196 0,
00197 0,
00198 0,
00199 0,
00200 0,
00201 0,
00202 0,
00203 0,
00204 0,
00205 0,
00206 0,
00207 0,
00208 0,
00209 0,
00210 0,
00211 0,
00212 0,
00213 0,
00214 0,
00215 0,
00216 0,
00217 0,
00218 0,
00219 0,
00220 0,
00221 0,
00222 0,
00223 0,
00224 0,
00225 0,
00226 0,
00227 0,
00228 0,
00229 0,
00230 0,
00231 0,
00232 0,
00233 0,
00234 0,
00235 0,
00236 0,
00237 0,
00238 0,
00239 0,
00240 0,
00241 0,
00242 0,
00243 0,
00244 0,
00245 0,
00246 0,
00247 0,
00248 0,
00249 0,
00250 0,
00251 0,
00252 0,
00253 0,
00254 0,
00255 0,
00256 0,
00257 0,
00258 0,
00259 0,
00260 0,
00261 0,
00262 0,
00263 0,
00264 0,
00265 0,
00266 0,
00267 0,
00268 0,
00269 0,
00270 0,
00271 0,
00272 0,
00273 0,
00274 0,
00275 0,
00276 0,
00277 0,
00278 0,
00279 0,
00280 0,
00281 0,
00282 0,
00283 0,
00284 0,
00285 0,
00286 0,
00287 0,
00288 0,
00289 0,
00290 0,
00291 0,
00292 0,
00293 };
00294
00295
00296
00297
00298
00299 const unsigned char lo_tab[257] =
00300 "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
00301 "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
00302 " !\"#$%&'()*+,-./0123456789:;<=>?"
00303 "@abcdefghijklmnopqrstuvwxyz[\\]^_"
00304 "`abcdefghijklmnopqrstuvwxyz{|}~\x7f"
00305 "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
00306 "\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
00307 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
00308 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
00309 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
00310 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
00311 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef"
00312 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff";
00313
00314 const unsigned char up_tab[257] =
00315 "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
00316 "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
00317 " !\"#$%&'()*+,-./0123456789:;<=>?"
00318 "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
00319 "`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~\x7f"
00320 "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
00321 "\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
00322 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
00323 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
00324 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
00325 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
00326 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef"
00327 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff";
00328
00329 }
00330 }