50 OnigEncDefaultCharEncoding =
enc;
82 if (prev) *prev = (
const UChar* )p;
119 return (q <= end ? q :
NULL);
147 if (len == 1)
return n;
150 if (*q !=
'\0')
break;
154 if (len == 1)
return n;
174 if (len == 1)
return (
int )(p - start);
177 if (*q !=
'\0')
break;
181 if (len == 1)
return (
int )(p - start);
189 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
190 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
191 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
192 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
193 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
194 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
195 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
196 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
197 '\100',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
198 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
199 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
200 '\170',
'\171',
'\172',
'\133',
'\134',
'\135',
'\136',
'\137',
201 '\140',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
202 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
203 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
204 '\170',
'\171',
'\172',
'\173',
'\174',
'\175',
'\176',
'\177',
205 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
206 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
207 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
208 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
209 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
210 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
211 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
212 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
213 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
214 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
215 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
216 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
217 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
218 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
219 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
220 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377',
223 #ifdef USE_UPPER_CASE_TABLE
225 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
226 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
227 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
228 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
229 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
230 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
231 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
232 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
233 '\100',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
234 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
235 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
236 '\130',
'\131',
'\132',
'\133',
'\134',
'\135',
'\136',
'\137',
237 '\140',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
238 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
239 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
240 '\130',
'\131',
'\132',
'\173',
'\174',
'\175',
'\176',
'\177',
241 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
242 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
243 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
244 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
245 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
246 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
247 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
248 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
249 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
250 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
251 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
252 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
253 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
254 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
255 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
256 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377',
261 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
262 0x4008, 0x420c, 0x4209, 0x4208, 0x4208, 0x4208, 0x4008, 0x4008,
263 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
264 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
265 0x4284, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
266 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
267 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0,
268 0x78b0, 0x78b0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
269 0x41a0, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x74a2,
270 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2,
271 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2,
272 0x74a2, 0x74a2, 0x74a2, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x51a0,
273 0x41a0, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x70e2,
274 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2,
275 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2,
276 0x70e2, 0x70e2, 0x70e2, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x4008,
277 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
278 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
279 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
280 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
281 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
282 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
283 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
284 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
285 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
286 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
287 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
288 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
289 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
290 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
291 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
292 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
296 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
297 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
298 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
299 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
300 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
301 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
302 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
303 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
304 '\100',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
305 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
306 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
307 '\170',
'\171',
'\172',
'\133',
'\134',
'\135',
'\136',
'\137',
308 '\140',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
309 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
310 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
311 '\170',
'\171',
'\172',
'\173',
'\174',
'\175',
'\176',
'\177',
312 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
313 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
314 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
315 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
316 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
317 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
318 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
319 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
320 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
321 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
322 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\327',
323 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\337',
324 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
325 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
326 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
327 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377'
330 #ifdef USE_UPPER_CASE_TABLE
332 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
333 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
334 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
335 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
336 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
337 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
338 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
339 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
340 '\100',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
341 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
342 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
343 '\130',
'\131',
'\132',
'\133',
'\134',
'\135',
'\136',
'\137',
344 '\140',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
345 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
346 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
347 '\130',
'\131',
'\132',
'\173',
'\174',
'\175',
'\176',
'\177',
348 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
349 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
350 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
351 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
352 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
353 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
354 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
355 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
356 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
357 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
358 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
359 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
360 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
361 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
362 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\367',
363 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\377',
420 code = OnigAsciiLowerMap[
i].
to;
422 if (r != 0)
return r;
424 code = OnigAsciiLowerMap[
i].
from;
425 r = (*f)(OnigAsciiLowerMap[
i].
to, &
code, 1,
arg);
426 if (r != 0)
return r;
437 if (0x41 <= *p && *p <= 0x5a) {
443 else if (0x61 <= *p && *p <= 0x7a) {
472 if (r != 0)
return r;
474 for (i = 0; i < map_size; i++) {
477 if (r != 0)
return r;
481 if (r != 0)
return r;
484 if (ess_tsett_flag != 0)
496 if (0x41 <= *p && *p <= 0x5a) {
500 if (*p == 0x53 && ess_tsett_flag != 0 && end > p + 1
501 && (*(p+1) == 0x53 || *(p+1) == 0x73)) {
511 else if (0x61 <= *p && *p <= 0x7a) {
515 if (*p == 0x73 && ess_tsett_flag != 0 && end > p + 1
516 && (*(p+1) == 0x73 || *(p+1) == 0x53)) {
526 else if (*p == 0xdf && ess_tsett_flag != 0) {
552 for (i = 0; i < map_size; i++) {
553 if (*p == map[i].from) {
559 else if (*p == map[i].to) {
584 if (*p == 0x0a)
return 1;
637 *buf = (
UChar )(code & 0xff);
679 len =
enclen(enc, p, end);
681 if (len == 1)
return n;
683 for (i = 1; i <
len; i++) {
708 for (i = 0; i <
len; i++) {
736 if (code <= 0xff)
return 1;
737 if (code <= 0xffff)
return 2;
744 if ((code & 0xff000000) != 0)
return 4;
745 else if ((code & 0xff0000) != 0)
return 3;
746 else if ((code & 0xff00) != 0)
return 2;
755 if ((code & 0xff00) != 0) {
756 *p++ = (
UChar )((code >> 8) & 0xff);
758 *p++ = (
UChar )(code & 0xff);
764 return (
int )(p -
buf);
772 if ((code & 0xff000000) != 0) {
773 *p++ = (
UChar )((code >> 24) & 0xff);
775 if ((code & 0xff0000) != 0 || p !=
buf) {
776 *p++ = (
UChar )((code >> 16) & 0xff);
778 if ((code & 0xff00) != 0 || p !=
buf) {
779 *p++ = (
UChar )((code >> 8) & 0xff);
781 *p++ = (
UChar )(code & 0xff);
787 return (
int )(p -
buf);
814 for (pbe = (pb = PBS) +
sizeof(PBS)/
sizeof(PBS[0]); pb < pbe; ++pb) {
815 if (len == pb->
len &&
855 const UChar* sascii ,
int n)
860 if (p >= end)
return (
int )(*sascii);
874 const UChar* sascii ,
int n)
879 if (p >= end)
return (
int )(*sascii);
921 #define PROP_INIT_SIZE 16
925 if (*psize <= *pnum) {
928 if (r != 0)
return r;
931 (*plist)[*pnum] = prop;
static int resize_property_list(int new_size, const OnigCodePoint ***plist, int *psize)
UChar * onigenc_step_back(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end, int n)
ONIG_EXTERN const unsigned short OnigEncAsciiCtypeTable[]
static st_index_t new_size(st_index_t size)
#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE
#define ONIGENC_CTYPE_GRAPH
int onigenc_always_true_is_allowed_reverse_match(const UChar *s ARG_UNUSED, const UChar *end ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
const OnigPairCaseFoldCodes OnigAsciiLowerMap[]
int onigenc_mbclen_approximate(const OnigUChar *p, const OnigUChar *e, struct OnigEncodingTypeST *enc)
size_t strlen(const char *)
OnigCodePoint onigenc_single_byte_mbc_to_code(const UChar *p, const UChar *end ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
ONIG_EXTERN const UChar OnigEncAsciiToLowerCaseTable[]
#define ONIGENC_MBC_MINLEN(enc)
#define ONIGENC_CTYPE_PUNCT
#define ONIGENC_CTYPE_XDIGIT
UChar * onigenc_get_right_adjust_char_head(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end)
unsigned int OnigCodePoint
int onigenc_set_default_encoding(OnigEncoding enc)
int onigenc_ascii_is_code_ctype(OnigCodePoint code, unsigned int ctype, OnigEncoding enc ARG_UNUSED)
int onigenc_mbn_mbc_case_fold(OnigEncoding enc, OnigCaseFoldType flag ARG_UNUSED, const UChar **pp, const UChar *end ARG_UNUSED, UChar *lower)
int onigenc_mb2_code_to_mbclen(OnigCodePoint code, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_CTYPE_ALNUM
#define ONIGENC_MBC_MAXLEN(enc)
#define ONIGENC_CTYPE_LOWER
UChar * onigenc_get_left_adjust_char_head(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end)
hash_table_type * onig_st_init_strend_table_with_size(st_index_t size)
int onigenc_strlen(OnigEncoding enc, const UChar *p, const UChar *end)
void rb_raise(VALUE exc, const char *fmt,...)
#define ONIGENC_CTYPE_SPACE
int onigenc_mb2_code_to_mbc(OnigEncoding enc, OnigCodePoint code, UChar *buf)
int onig_st_insert_strend(hash_table_type *table, const UChar *str_key, const UChar *end_key, hash_data_type value)
int onigenc_ascii_apply_all_case_fold(OnigCaseFoldType flag ARG_UNUSED, OnigApplyAllCaseFoldFunc f, void *arg, OnigEncoding enc ARG_UNUSED)
UChar * onigenc_get_right_adjust_char_head_with_prev(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end, const UChar **prev)
#define ONIGENC_PRECISE_MBC_ENC_LEN(enc, p, e)
#define ONIGENC_IS_ASCII_CODE(code)
#define ONIGENC_CTYPE_CNTRL
unsigned int OnigCaseFoldType
#define ONIGENC_MBCLEN_NEEDMORE_P(r)
#define PosixBracketEntryInit(name, ctype)
OnigEncoding onigenc_get_default_encoding(void)
#define ONIGENC_IS_ASCII_CODE_CTYPE(code, ctype)
ONIG_EXTERN const UChar OnigEncISO_8859_1_ToUpperCaseTable[]
int onigenc_mb2_is_code_ctype(OnigEncoding enc, OnigCodePoint code, unsigned int ctype)
UChar * onigenc_get_prev_char_head(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end)
static int ss_apply_all_case_fold(OnigCaseFoldType flag ARG_UNUSED, OnigApplyAllCaseFoldFunc f, void *arg)
OnigCodePoint code[ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN]
ONIG_EXTERN OnigEncoding OnigEncDefaultCharEncoding
#define enclen(enc, p, e)
#define THREAD_ATOMIC_END
#define ONIGENC_MBCLEN_CHARFOUND_LEN(r)
void onigenc_set_default_caseconv_table(const UChar *table ARG_UNUSED)
int onigenc_always_false_is_allowed_reverse_match(const UChar *s ARG_UNUSED, const UChar *end ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
int onigenc_with_ascii_strnicmp(OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n)
#define ONIG_IS_NOT_NULL(p)
#define ONIGENC_CTYPE_UPPER
#define ONIGENC_CTYPE_ALPHA
#define ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc, start, s, end)
int onigenc_apply_all_case_fold_with_map(int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg)
int onigenc_single_byte_code_to_mbclen(OnigCodePoint code ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_IS_MBC_ASCII(p)
#define ONIGENC_MBCLEN_NEEDMORE_LEN(r)
unsigned char buf[MIME_BUF_SIZE]
UChar * onigenc_single_byte_left_adjust_char_head(const UChar *start ARG_UNUSED, const UChar *s, const UChar *end, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_CTYPE_BLANK
int onigenc_is_mbc_newline_0x0a(const UChar *p, const UChar *end, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_CTYPE_ASCII
#define THREAD_ATOMIC_START
int onigenc_mb4_is_code_ctype(OnigEncoding enc, OnigCodePoint code, unsigned int ctype)
int onigenc_property_list_init(int(*f)(void))
int onigenc_single_byte_mbc_enc_len(const UChar *p ARG_UNUSED, const UChar *e ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
#define ONIG_NO_SUPPORT_CONFIG
int onigenc_not_support_get_ctype_code_range(OnigCtype ctype, OnigCodePoint *sb_out, const OnigCodePoint *ranges[], OnigEncoding enc)
int onigenc_str_bytelen_null(OnigEncoding enc, const UChar *s)
int onigenc_strlen_null(OnigEncoding enc, const UChar *s)
int onigenc_ascii_get_case_fold_codes_by_str(OnigCaseFoldType flag ARG_UNUSED, const OnigUChar *p, const OnigUChar *end ARG_UNUSED, OnigCaseFoldCodeItem items[], OnigEncoding enc ARG_UNUSED)
UChar * onigenc_step(OnigEncoding enc, const UChar *p, const UChar *end, int n)
ONIG_EXTERN const UChar OnigEncISO_8859_1_ToLowerCaseTable[]
int onigenc_mb4_code_to_mbc(OnigEncoding enc, OnigCodePoint code, UChar *buf)
#define ONIGENC_CTYPE_WORD
#define ONIGENC_CODE_TO_MBCLEN(enc, code)
#define ONIGENC_MBC_TO_CODE(enc, p, end)
#define ONIGENC_MBC_ENC_LEN(enc, p, e)
#define ONIGENC_CTYPE_DIGIT
struct rb_encoding_entry * list
int onigenc_mb4_code_to_mbclen(OnigCodePoint code, OnigEncoding enc ARG_UNUSED)
int onigenc_single_byte_code_to_mbc(OnigCodePoint code, UChar *buf, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_IS_ASCII_CODE_CASE_AMBIG(code)
#define ONIGENC_ASCII_CODE_TO_LOWER_CASE(c)
int onigenc_with_ascii_strncmp(OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n)
OnigCodePoint onigenc_mbn_mbc_to_code(OnigEncoding enc, const UChar *p, const UChar *end)
#define ONIGERR_INVALID_CODE_POINT_VALUE
#define ONIGENC_CTYPE_PRINT
ONIG_EXTERN const UChar OnigEncAsciiToUpperCaseTable[]
int onigenc_property_list_add_property(UChar *name, const OnigCodePoint *prop, hash_table_type **table, const OnigCodePoint ***plist, int *pnum, int *psize)
#define CTYPE_IS_WORD_GRAPH_PRINT(ctype)
int(* OnigApplyAllCaseFoldFunc)(OnigCodePoint from, OnigCodePoint *to, int to_len, void *arg)
int onigenc_minimum_property_name_to_ctype(OnigEncoding enc, UChar *p, UChar *end)
#define ONIG_ENCODING_INIT_DEFAULT
#define ONIGENC_MAX_STD_CTYPE
int onigenc_ascii_mbc_case_fold(OnigCaseFoldType flag ARG_UNUSED, const UChar **p, const UChar *end, UChar *lower, OnigEncoding enc ARG_UNUSED)
int onigenc_get_case_fold_codes_by_str_with_map(int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag ARG_UNUSED, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[])
#define ONIGERR_INVALID_CHAR_PROPERTY_NAME
#define ONIGENC_MBCLEN_CHARFOUND_P(r)