49 OnigEncDefaultCharEncoding = enc;
81 if (prev) *prev = (
const UChar* )p;
118 return (q <= end ? q :
NULL);
146 if (len == 1)
return n;
149 if (*q !=
'\0')
break;
153 if (len == 1)
return n;
173 if (len == 1)
return (
int )(p - start);
176 if (*q !=
'\0')
break;
180 if (len == 1)
return (
int )(p - start);
188 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
189 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
190 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
191 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
192 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
193 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
194 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
195 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
196 '\100',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
197 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
198 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
199 '\170',
'\171',
'\172',
'\133',
'\134',
'\135',
'\136',
'\137',
200 '\140',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
201 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
202 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
203 '\170',
'\171',
'\172',
'\173',
'\174',
'\175',
'\176',
'\177',
204 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
205 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
206 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
207 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
208 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
209 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
210 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
211 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
212 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
213 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
214 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
215 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
216 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
217 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
218 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
219 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377',
222 #ifdef USE_UPPER_CASE_TABLE
224 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
225 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
226 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
227 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
228 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
229 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
230 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
231 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
232 '\100',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
233 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
234 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
235 '\130',
'\131',
'\132',
'\133',
'\134',
'\135',
'\136',
'\137',
236 '\140',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
237 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
238 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
239 '\130',
'\131',
'\132',
'\173',
'\174',
'\175',
'\176',
'\177',
240 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
241 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
242 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
243 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
244 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
245 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
246 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
247 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
248 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
249 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
250 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
251 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
252 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
253 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
254 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
255 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377',
260 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
261 0x4008, 0x420c, 0x4209, 0x4208, 0x4208, 0x4208, 0x4008, 0x4008,
262 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
263 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008, 0x4008,
264 0x4284, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
265 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
266 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0, 0x78b0,
267 0x78b0, 0x78b0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x41a0,
268 0x41a0, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x7ca2, 0x74a2,
269 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2,
270 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2, 0x74a2,
271 0x74a2, 0x74a2, 0x74a2, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x51a0,
272 0x41a0, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x78e2, 0x70e2,
273 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2,
274 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2, 0x70e2,
275 0x70e2, 0x70e2, 0x70e2, 0x41a0, 0x41a0, 0x41a0, 0x41a0, 0x4008,
276 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
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
295 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
296 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
297 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
298 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
299 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
300 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
301 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
302 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
303 '\100',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
304 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
305 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
306 '\170',
'\171',
'\172',
'\133',
'\134',
'\135',
'\136',
'\137',
307 '\140',
'\141',
'\142',
'\143',
'\144',
'\145',
'\146',
'\147',
308 '\150',
'\151',
'\152',
'\153',
'\154',
'\155',
'\156',
'\157',
309 '\160',
'\161',
'\162',
'\163',
'\164',
'\165',
'\166',
'\167',
310 '\170',
'\171',
'\172',
'\173',
'\174',
'\175',
'\176',
'\177',
311 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
312 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
313 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
314 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
315 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
316 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
317 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
318 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
319 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
320 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
321 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\327',
322 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\337',
323 '\340',
'\341',
'\342',
'\343',
'\344',
'\345',
'\346',
'\347',
324 '\350',
'\351',
'\352',
'\353',
'\354',
'\355',
'\356',
'\357',
325 '\360',
'\361',
'\362',
'\363',
'\364',
'\365',
'\366',
'\367',
326 '\370',
'\371',
'\372',
'\373',
'\374',
'\375',
'\376',
'\377'
329 #ifdef USE_UPPER_CASE_TABLE
331 '\000',
'\001',
'\002',
'\003',
'\004',
'\005',
'\006',
'\007',
332 '\010',
'\011',
'\012',
'\013',
'\014',
'\015',
'\016',
'\017',
333 '\020',
'\021',
'\022',
'\023',
'\024',
'\025',
'\026',
'\027',
334 '\030',
'\031',
'\032',
'\033',
'\034',
'\035',
'\036',
'\037',
335 '\040',
'\041',
'\042',
'\043',
'\044',
'\045',
'\046',
'\047',
336 '\050',
'\051',
'\052',
'\053',
'\054',
'\055',
'\056',
'\057',
337 '\060',
'\061',
'\062',
'\063',
'\064',
'\065',
'\066',
'\067',
338 '\070',
'\071',
'\072',
'\073',
'\074',
'\075',
'\076',
'\077',
339 '\100',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
340 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
341 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
342 '\130',
'\131',
'\132',
'\133',
'\134',
'\135',
'\136',
'\137',
343 '\140',
'\101',
'\102',
'\103',
'\104',
'\105',
'\106',
'\107',
344 '\110',
'\111',
'\112',
'\113',
'\114',
'\115',
'\116',
'\117',
345 '\120',
'\121',
'\122',
'\123',
'\124',
'\125',
'\126',
'\127',
346 '\130',
'\131',
'\132',
'\173',
'\174',
'\175',
'\176',
'\177',
347 '\200',
'\201',
'\202',
'\203',
'\204',
'\205',
'\206',
'\207',
348 '\210',
'\211',
'\212',
'\213',
'\214',
'\215',
'\216',
'\217',
349 '\220',
'\221',
'\222',
'\223',
'\224',
'\225',
'\226',
'\227',
350 '\230',
'\231',
'\232',
'\233',
'\234',
'\235',
'\236',
'\237',
351 '\240',
'\241',
'\242',
'\243',
'\244',
'\245',
'\246',
'\247',
352 '\250',
'\251',
'\252',
'\253',
'\254',
'\255',
'\256',
'\257',
353 '\260',
'\261',
'\262',
'\263',
'\264',
'\265',
'\266',
'\267',
354 '\270',
'\271',
'\272',
'\273',
'\274',
'\275',
'\276',
'\277',
355 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
356 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
357 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\327',
358 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\337',
359 '\300',
'\301',
'\302',
'\303',
'\304',
'\305',
'\306',
'\307',
360 '\310',
'\311',
'\312',
'\313',
'\314',
'\315',
'\316',
'\317',
361 '\320',
'\321',
'\322',
'\323',
'\324',
'\325',
'\326',
'\367',
362 '\330',
'\331',
'\332',
'\333',
'\334',
'\335',
'\336',
'\377',
419 code = OnigAsciiLowerMap[
i].
to;
420 r = (*f)(OnigAsciiLowerMap[
i].
from, &code, 1,
arg);
421 if (r != 0)
return r;
423 code = OnigAsciiLowerMap[
i].
from;
424 r = (*f)(OnigAsciiLowerMap[
i].
to, &code, 1,
arg);
425 if (r != 0)
return r;
436 if (0x41 <= *p && *p <= 0x5a) {
442 else if (0x61 <= *p && *p <= 0x7a) {
471 if (r != 0)
return r;
473 for (i = 0; i < map_size; i++) {
475 r = (*f)(map[
i].
from, &code, 1,
arg);
476 if (r != 0)
return r;
479 r = (*f)(map[
i].
to, &code, 1,
arg);
480 if (r != 0)
return r;
483 if (ess_tsett_flag != 0)
495 if (0x41 <= *p && *p <= 0x5a) {
499 if (*p == 0x53 && ess_tsett_flag != 0 && end > p + 1
500 && (*(p+1) == 0x53 || *(p+1) == 0x73)) {
510 else if (0x61 <= *p && *p <= 0x7a) {
514 if (*p == 0x73 && ess_tsett_flag != 0 && end > p + 1
515 && (*(p+1) == 0x73 || *(p+1) == 0x53)) {
525 else if (*p == 0xdf && ess_tsett_flag != 0) {
551 for (i = 0; i < map_size; i++) {
552 if (*p == map[i].from) {
558 else if (*p == map[i].to) {
583 if (*p == 0x0a)
return 1;
602 const UChar** pp,
const UChar* end ARG_UNUSED)
636 *buf = (
UChar )(code & 0xff);
678 len =
enclen(enc, p, end);
680 if (len == 1)
return n;
682 for (i = 1; i <
len; i++) {
692 const UChar** pp,
const UChar* end ARG_UNUSED,
706 len =
enclen(enc, p, end);
707 for (i = 0; i <
len; i++) {
735 if (code <= 0xff)
return 1;
736 if (code <= 0xffff)
return 2;
743 if ((code & 0xff000000) != 0)
return 4;
744 else if ((code & 0xff0000) != 0)
return 3;
745 else if ((code & 0xff00) != 0)
return 2;
754 if ((code & 0xff00) != 0) {
755 *p++ = (
UChar )((code >> 8) & 0xff);
757 *p++ = (
UChar )(code & 0xff);
763 return (
int)(p -
buf);
771 if ((code & 0xff000000) != 0) {
772 *p++ = (
UChar )((code >> 24) & 0xff);
774 if ((code & 0xff0000) != 0 || p !=
buf) {
775 *p++ = (
UChar )((code >> 16) & 0xff);
777 if ((code & 0xff00) != 0 || p !=
buf) {
778 *p++ = (
UChar )((code >> 8) & 0xff);
780 *p++ = (
UChar )(code & 0xff);
786 return (
int)(p -
buf);
813 for (pbe = (pb = PBS) +
sizeof(PBS)/
sizeof(PBS[0]); pb < pbe; ++pb) {
814 if (len == pb->
len &&
854 const UChar* sascii ,
int n)
859 if (p >= end)
return (
int )(*sascii);
899 #define PROP_INIT_SIZE 16
903 if (*psize <= *pnum) {
906 if (r != 0)
return r;
909 (*plist)[*pnum] = prop;
#define STRNCASECMP(s1, s2, n)
static int resize_property_list(int new_size, const OnigCodePoint ***plist, int *psize)
#define ONIGENC_MBCLEN_CHARFOUND_P(r)
#define ONIGENC_CTYPE_BLANK
#define ONIGENC_CTYPE_PUNCT
UChar * onigenc_step_back(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end, int n)
unsigned int OnigCodePoint
static st_index_t new_size(st_index_t size)
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[]
#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE
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)
#define ONIGENC_IS_MBC_ASCII(p)
const UChar OnigEncAsciiToLowerCaseTable[]
UChar * onigenc_get_right_adjust_char_head(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end)
unsigned int OnigCaseFoldType
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)
UChar * onigenc_get_left_adjust_char_head(OnigEncoding enc, const UChar *start, const UChar *s, const UChar *end)
#define ONIGENC_MBCLEN_CHARFOUND_LEN(r)
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_CNTRL
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_CTYPE_ALNUM
#define ONIGENC_CTYPE_WORD
#define ONIGENC_CTYPE_ALPHA
#define PosixBracketEntryInit(name, ctype)
OnigEncoding onigenc_get_default_encoding(void)
#define ONIGENC_IS_ASCII_CODE_CTYPE(code, ctype)
#define ONIGERR_INVALID_CHAR_PROPERTY_NAME
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)
#define ONIGENC_CTYPE_UPPER
#define enclen(enc, p, e)
#define ONIGENC_CTYPE_DIGIT
#define THREAD_ATOMIC_END
#define ONIGENC_MBC_ENC_LEN(enc, p, e)
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(* OnigApplyAllCaseFoldFunc)(OnigCodePoint from, OnigCodePoint *to, int to_len, void *arg)
#define ONIGENC_CTYPE_XDIGIT
#define ONIG_IS_NOT_NULL(p)
OnigEncoding OnigEncDefaultCharEncoding
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)
UChar * onigenc_single_byte_left_adjust_char_head(const UChar *start ARG_UNUSED, const UChar *s, const UChar *end, OnigEncoding enc ARG_UNUSED)
int onigenc_is_mbc_newline_0x0a(const UChar *p, const UChar *end, OnigEncoding enc ARG_UNUSED)
#define ONIGENC_CODE_TO_MBCLEN(enc, code)
#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))
unsigned char buf[MIME_BUF_SIZE]
#define ONIGENC_CTYPE_PRINT
#define ONIG_NO_SUPPORT_CONFIG
int onigenc_single_byte_mbc_enc_len(const UChar *p ARG_UNUSED, const UChar *e ARG_UNUSED, OnigEncoding enc ARG_UNUSED)
register unsigned int len
#define ONIGENC_CTYPE_SPACE
const unsigned short OnigEncAsciiCtypeTable[256]
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)
#define ONIGENC_MBC_TO_CODE(enc, p, end)
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)
#define ONIGENC_MBC_MINLEN(enc)
UChar * onigenc_step(OnigEncoding enc, const UChar *p, const UChar *end, int n)
#define ONIGENC_MAX_STD_CTYPE
#define ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc, start, s, end)
int onigenc_mb4_code_to_mbc(OnigEncoding enc, OnigCodePoint code, UChar *buf)
#define ONIGENC_PRECISE_MBC_ENC_LEN(enc, p, e)
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)
OnigCodePoint code[ONIGENC_MAX_COMP_CASE_FOLD_CODE_LEN]
#define ONIGENC_ASCII_CODE_TO_LOWER_CASE(c)
unsigned long hash_data_type
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 ONIGENC_CTYPE_GRAPH
#define ONIGERR_INVALID_CODE_POINT_VALUE
#define ONIGENC_MBCLEN_NEEDMORE_LEN(r)
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)
#define ONIGENC_CTYPE_LOWER
#define ONIGENC_CTYPE_ASCII
#define ONIGENC_MBCLEN_NEEDMORE_P(r)
int onigenc_minimum_property_name_to_ctype(OnigEncoding enc, UChar *p, UChar *end)
#define ONIG_ENCODING_INIT_DEFAULT
int onigenc_ascii_mbc_case_fold(OnigCaseFoldType flag ARG_UNUSED, const UChar **p, const UChar *end, UChar *lower, OnigEncoding enc ARG_UNUSED)
const UChar OnigEncISO_8859_1_ToLowerCaseTable[256]
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 ONIGENC_MBC_MAXLEN(enc)