From 78c5ca70744e85f8468147ddc362962bcd987d30 Mon Sep 17 00:00:00 2001 From: duerst Date: Sun, 22 May 2016 05:57:44 +0000 Subject: * include/ruby/oniguruma.h: Extend OnigEncodingTypeDefine to define a new encoding primitive 'case_map' for case mapping * enc/utf-8.c, utf_16be/le.c, utf_32be/le.c: add onigenc_unicode_case_map as case_map primitive * enc/ascii.c, big5.c, cp949.c, emacs_mule.c, euc_jp/kr/tw.c, gb18030.c, gbk.c, iso_8859_1/2/3/4/5/6/7/8/9/10/11/13/14/15/16.c, koi8_r/u.c, shift_jis.c, us_ascii.c, windows_1250/1251/1252.c: add onigenc_not_support_case_map as case_map primitive git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 13 +++++++++++++ enc/ascii.c | 3 +++ enc/big5.c | 9 +++++++++ enc/cp949.c | 3 +++ enc/emacs_mule.c | 3 +++ enc/euc_jp.c | 3 +++ enc/euc_kr.c | 3 +++ enc/euc_tw.c | 3 +++ enc/gb18030.c | 3 +++ enc/gbk.c | 3 +++ enc/iso_8859_1.c | 3 +++ enc/iso_8859_10.c | 3 +++ enc/iso_8859_11.c | 3 +++ enc/iso_8859_13.c | 3 +++ enc/iso_8859_14.c | 3 +++ enc/iso_8859_15.c | 3 +++ enc/iso_8859_16.c | 3 +++ enc/iso_8859_2.c | 3 +++ enc/iso_8859_3.c | 3 +++ enc/iso_8859_4.c | 3 +++ enc/iso_8859_5.c | 3 +++ enc/iso_8859_6.c | 3 +++ enc/iso_8859_7.c | 3 +++ enc/iso_8859_8.c | 3 +++ enc/iso_8859_9.c | 3 +++ enc/koi8_r.c | 3 +++ enc/koi8_u.c | 3 +++ enc/shift_jis.c | 3 +++ enc/us_ascii.c | 3 +++ enc/utf_16be.c | 3 +++ enc/utf_16le.c | 3 +++ enc/utf_32be.c | 3 +++ enc/utf_32le.c | 3 +++ enc/utf_8.c | 3 +++ enc/windows_1250.c | 3 +++ enc/windows_1251.c | 3 +++ enc/windows_1252.c | 3 +++ enc/windows_31j.c | 3 +++ include/ruby/oniguruma.h | 3 +++ 39 files changed, 133 insertions(+) diff --git a/ChangeLog b/ChangeLog index 01635ada5d..705e6f637c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +Sun May 22 14:57:43 2016 Martin Duerst + + * include/ruby/oniguruma.h: Extend OnigEncodingTypeDefine to define a + new encoding primitive 'case_map' for case mapping + + * enc/utf-8.c, utf_16be/le.c, utf_32be/le.c: + add onigenc_unicode_case_map as case_map primitive + + * enc/ascii.c, big5.c, cp949.c, emacs_mule.c, euc_jp/kr/tw.c, gb18030.c, + gbk.c, iso_8859_1/2/3/4/5/6/7/8/9/10/11/13/14/15/16.c, koi8_r/u.c, + shift_jis.c, us_ascii.c, windows_1250/1251/1252.c: + add onigenc_not_support_case_map as case_map primitive + Sun May 22 14:45:45 2016 Martin Duerst * regenc.h/c: Define new function onigenc_not_support_case_map diff --git a/enc/ascii.c b/enc/ascii.c index 4fdc976e12..85a69e3ac7 100644 --- a/enc/ascii.c +++ b/enc/ascii.c @@ -53,6 +53,9 @@ OnigEncodingDefine(ascii, ASCII) = { onigenc_always_true_is_allowed_reverse_match, ENCINDEX_ASCII, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("BINARY", "ASCII-8BIT") ENC_REPLICATE("IBM437", "ASCII-8BIT") diff --git a/enc/big5.c b/enc/big5.c index 27315c4ba9..7c6c2d359f 100644 --- a/enc/big5.c +++ b/enc/big5.c @@ -302,6 +302,9 @@ OnigEncodingDefine(big5, BIG5) = { big5_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* @@ -336,6 +339,9 @@ OnigEncodingDefine(big5_hkscs, BIG5_HKSCS) = { big5_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("Big5-HKSCS:2008", "Big5-HKSCS") @@ -370,4 +376,7 @@ OnigEncodingDefine(big5_uao, BIG5_UAO) = { big5_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; diff --git a/enc/cp949.c b/enc/cp949.c index bf1c2637a3..c71b3fd7a8 100644 --- a/enc/cp949.c +++ b/enc/cp949.c @@ -213,6 +213,9 @@ OnigEncodingDefine(cp949, CP949) = { cp949_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: CP949 diff --git a/enc/emacs_mule.c b/enc/emacs_mule.c index 275c8f47dc..6bd461558e 100644 --- a/enc/emacs_mule.c +++ b/enc/emacs_mule.c @@ -336,6 +336,9 @@ OnigEncodingDefine(emacs_mule, Emacs_Mule) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_REPLICATE("stateless-ISO-2022-JP", "Emacs-Mule") diff --git a/enc/euc_jp.c b/enc/euc_jp.c index 7922aac150..da12624410 100644 --- a/enc/euc_jp.c +++ b/enc/euc_jp.c @@ -578,6 +578,9 @@ OnigEncodingDefine(euc_jp, EUC_JP) = { is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: EUC-JP diff --git a/enc/euc_kr.c b/enc/euc_kr.c index 55acf00168..345a88cfb7 100644 --- a/enc/euc_kr.c +++ b/enc/euc_kr.c @@ -190,5 +190,8 @@ OnigEncodingDefine(euc_kr, EUC_KR) = { euckr_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("eucKR", "EUC-KR") diff --git a/enc/euc_tw.c b/enc/euc_tw.c index 6d193b745e..4d89767947 100644 --- a/enc/euc_tw.c +++ b/enc/euc_tw.c @@ -223,5 +223,8 @@ OnigEncodingDefine(euc_tw, EUC_TW) = { euctw_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("eucTW", "EUC-TW") diff --git a/enc/gb18030.c b/enc/gb18030.c index d4184333f5..6efc66e947 100644 --- a/enc/gb18030.c +++ b/enc/gb18030.c @@ -599,5 +599,8 @@ OnigEncodingDefine(gb18030, GB18030) = { gb18030_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; diff --git a/enc/gbk.c b/enc/gbk.c index 7be60a0de9..cead9b1dfc 100644 --- a/enc/gbk.c +++ b/enc/gbk.c @@ -213,6 +213,9 @@ OnigEncodingDefine(gbk, GBK) = { gbk_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: GBK diff --git a/enc/iso_8859_1.c b/enc/iso_8859_1.c index e3315876cd..96bc8af8b0 100644 --- a/enc/iso_8859_1.c +++ b/enc/iso_8859_1.c @@ -273,5 +273,8 @@ OnigEncodingDefine(iso_8859_1, ISO_8859_1) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-1", "ISO-8859-1") diff --git a/enc/iso_8859_10.c b/enc/iso_8859_10.c index ab71a5adcf..73e0682068 100644 --- a/enc/iso_8859_10.c +++ b/enc/iso_8859_10.c @@ -242,5 +242,8 @@ OnigEncodingDefine(iso_8859_10, ISO_8859_10) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-10", "ISO-8859-10") diff --git a/enc/iso_8859_11.c b/enc/iso_8859_11.c index ec9840e127..202522b20e 100644 --- a/enc/iso_8859_11.c +++ b/enc/iso_8859_11.c @@ -95,6 +95,9 @@ OnigEncodingDefine(iso_8859_11, ISO_8859_11) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-11", "ISO-8859-11") diff --git a/enc/iso_8859_13.c b/enc/iso_8859_13.c index 4ecf15678f..3061b86935 100644 --- a/enc/iso_8859_13.c +++ b/enc/iso_8859_13.c @@ -235,6 +235,9 @@ OnigEncodingDefine(iso_8859_13, ISO_8859_13) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-13", "ISO-8859-13") diff --git a/enc/iso_8859_14.c b/enc/iso_8859_14.c index 2939e89b7b..9070d23452 100644 --- a/enc/iso_8859_14.c +++ b/enc/iso_8859_14.c @@ -244,5 +244,8 @@ OnigEncodingDefine(iso_8859_14, ISO_8859_14) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-14", "ISO-8859-14") diff --git a/enc/iso_8859_15.c b/enc/iso_8859_15.c index fdb7ca12d7..faf5ba1a74 100644 --- a/enc/iso_8859_15.c +++ b/enc/iso_8859_15.c @@ -238,5 +238,8 @@ OnigEncodingDefine(iso_8859_15, ISO_8859_15) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-15", "ISO-8859-15") diff --git a/enc/iso_8859_16.c b/enc/iso_8859_16.c index 5e53f3b6d0..ee77bedf35 100644 --- a/enc/iso_8859_16.c +++ b/enc/iso_8859_16.c @@ -240,5 +240,8 @@ OnigEncodingDefine(iso_8859_16, ISO_8859_16) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-16", "ISO-8859-16") diff --git a/enc/iso_8859_2.c b/enc/iso_8859_2.c index 9302e62fc1..f710a14aa0 100644 --- a/enc/iso_8859_2.c +++ b/enc/iso_8859_2.c @@ -238,5 +238,8 @@ OnigEncodingDefine(iso_8859_2, ISO_8859_2) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-2", "ISO-8859-2") diff --git a/enc/iso_8859_3.c b/enc/iso_8859_3.c index 863a575020..40fab166fe 100644 --- a/enc/iso_8859_3.c +++ b/enc/iso_8859_3.c @@ -238,5 +238,8 @@ OnigEncodingDefine(iso_8859_3, ISO_8859_3) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-3", "ISO-8859-3") diff --git a/enc/iso_8859_4.c b/enc/iso_8859_4.c index 6a74406303..d2d60dd6e4 100644 --- a/enc/iso_8859_4.c +++ b/enc/iso_8859_4.c @@ -241,5 +241,8 @@ OnigEncodingDefine(iso_8859_4, ISO_8859_4) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-4", "ISO-8859-4") diff --git a/enc/iso_8859_5.c b/enc/iso_8859_5.c index e71a488c4c..7c085c0733 100644 --- a/enc/iso_8859_5.c +++ b/enc/iso_8859_5.c @@ -228,5 +228,8 @@ OnigEncodingDefine(iso_8859_5, ISO_8859_5) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-5", "ISO-8859-5") diff --git a/enc/iso_8859_6.c b/enc/iso_8859_6.c index 638a181dc2..3159d6fdf1 100644 --- a/enc/iso_8859_6.c +++ b/enc/iso_8859_6.c @@ -95,6 +95,9 @@ OnigEncodingDefine(iso_8859_6, ISO_8859_6) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-6", "ISO-8859-6") diff --git a/enc/iso_8859_7.c b/enc/iso_8859_7.c index 8d07cb6310..3388bfb8c1 100644 --- a/enc/iso_8859_7.c +++ b/enc/iso_8859_7.c @@ -225,6 +225,9 @@ OnigEncodingDefine(iso_8859_7, ISO_8859_7) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-7", "ISO-8859-7") diff --git a/enc/iso_8859_8.c b/enc/iso_8859_8.c index 87a6e7bc9b..b4b4a38e47 100644 --- a/enc/iso_8859_8.c +++ b/enc/iso_8859_8.c @@ -95,6 +95,9 @@ OnigEncodingDefine(iso_8859_8, ISO_8859_8) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-8", "ISO-8859-8") diff --git a/enc/iso_8859_9.c b/enc/iso_8859_9.c index 211ba3b2f3..488ddf7d13 100644 --- a/enc/iso_8859_9.c +++ b/enc/iso_8859_9.c @@ -231,6 +231,9 @@ OnigEncodingDefine(iso_8859_9, ISO_8859_9) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ISO8859-9", "ISO-8859-9") diff --git a/enc/koi8_r.c b/enc/koi8_r.c index 85fa72287e..e91f728d27 100644 --- a/enc/koi8_r.c +++ b/enc/koi8_r.c @@ -216,6 +216,9 @@ OnigEncodingDefine(koi8_r, KOI8_R) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("CP878", "KOI8-R") diff --git a/enc/koi8_u.c b/enc/koi8_u.c index 0ae449ca21..4fdf957c34 100644 --- a/enc/koi8_u.c +++ b/enc/koi8_u.c @@ -220,4 +220,7 @@ OnigEncodingDefine(koi8_u, KOI8_U) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; diff --git a/enc/shift_jis.c b/enc/shift_jis.c index 165592c905..71413ea2f5 100644 --- a/enc/shift_jis.c +++ b/enc/shift_jis.c @@ -565,6 +565,9 @@ OnigEncodingDefine(shift_jis, Shift_JIS) = { is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: Shift_JIS diff --git a/enc/us_ascii.c b/enc/us_ascii.c index f28300ebc6..5893ad3fd9 100644 --- a/enc/us_ascii.c +++ b/enc/us_ascii.c @@ -31,6 +31,9 @@ OnigEncodingDefine(us_ascii, US_ASCII) = { onigenc_always_true_is_allowed_reverse_match, ENCINDEX_US_ASCII, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("ASCII", "US-ASCII") ENC_ALIAS("ANSI_X3.4-1968", "US-ASCII") diff --git a/enc/utf_16be.c b/enc/utf_16be.c index a61ae00863..6bf7d80ae2 100644 --- a/enc/utf_16be.c +++ b/enc/utf_16be.c @@ -250,5 +250,8 @@ OnigEncodingDefine(utf_16be, UTF_16BE) = { onigenc_always_false_is_allowed_reverse_match, 0, ONIGENC_FLAG_UNICODE, +#ifdef ONIG_CASE_MAPPING + onigenc_unicode_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("UCS-2BE", "UTF-16BE") diff --git a/enc/utf_16le.c b/enc/utf_16le.c index 7d176e710e..a4bb6f7931 100644 --- a/enc/utf_16le.c +++ b/enc/utf_16le.c @@ -243,4 +243,7 @@ OnigEncodingDefine(utf_16le, UTF_16LE) = { onigenc_always_false_is_allowed_reverse_match, 0, ONIGENC_FLAG_UNICODE, +#ifdef ONIG_CASE_MAPPING + onigenc_unicode_case_map, +#endif /* ONIG_CASE_MAPPING */ }; diff --git a/enc/utf_32be.c b/enc/utf_32be.c index 43c07e2e8f..b37e961e17 100644 --- a/enc/utf_32be.c +++ b/enc/utf_32be.c @@ -188,6 +188,9 @@ OnigEncodingDefine(utf_32be, UTF_32BE) = { onigenc_always_false_is_allowed_reverse_match, 0, ONIGENC_FLAG_UNICODE, +#ifdef ONIG_CASE_MAPPING + onigenc_unicode_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("UCS-4BE", "UTF-32BE") diff --git a/enc/utf_32le.c b/enc/utf_32le.c index 31693eed05..901e544418 100644 --- a/enc/utf_32le.c +++ b/enc/utf_32le.c @@ -188,5 +188,8 @@ OnigEncodingDefine(utf_32le, UTF_32LE) = { onigenc_always_false_is_allowed_reverse_match, 0, ONIGENC_FLAG_UNICODE, +#ifdef ONIG_CASE_MAPPING + onigenc_unicode_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("UCS-4LE", "UTF-32LE") diff --git a/enc/utf_8.c b/enc/utf_8.c index ae5258dae2..5766d04d57 100644 --- a/enc/utf_8.c +++ b/enc/utf_8.c @@ -430,6 +430,9 @@ OnigEncodingDefine(utf_8, UTF_8) = { onigenc_always_true_is_allowed_reverse_match, ENCINDEX_UTF_8, ONIGENC_FLAG_UNICODE, +#ifdef ONIG_CASE_MAPPING + onigenc_unicode_case_map, +#endif /* ONIG_CASE_MAPPING */ }; ENC_ALIAS("CP65001", "UTF-8") diff --git a/enc/windows_1250.c b/enc/windows_1250.c index cb8e2233a2..a61d4f443a 100644 --- a/enc/windows_1250.c +++ b/enc/windows_1250.c @@ -208,6 +208,9 @@ OnigEncodingDefine(windows_1250, Windows_1250) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: windows-1250 diff --git a/enc/windows_1251.c b/enc/windows_1251.c index 191d631b88..e56c3b517f 100644 --- a/enc/windows_1251.c +++ b/enc/windows_1251.c @@ -199,6 +199,9 @@ OnigEncodingDefine(windows_1251, Windows_1251) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: windows-1251 diff --git a/enc/windows_1252.c b/enc/windows_1252.c index 85f2cfbc25..4075462811 100644 --- a/enc/windows_1252.c +++ b/enc/windows_1252.c @@ -200,6 +200,9 @@ OnigEncodingDefine(windows_1252, Windows_1252) = { onigenc_always_true_is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: windows-1252 diff --git a/enc/windows_31j.c b/enc/windows_31j.c index c4193819d4..20597abf65 100644 --- a/enc/windows_31j.c +++ b/enc/windows_31j.c @@ -50,6 +50,9 @@ OnigEncodingDefine(windows_31j, Windows_31J) = { is_allowed_reverse_match, 0, ONIGENC_FLAG_NONE, +#ifdef ONIG_CASE_MAPPING + onigenc_not_support_case_map, +#endif /* ONIG_CASE_MAPPING */ }; /* * Name: Windows-31J diff --git a/include/ruby/oniguruma.h b/include/ruby/oniguruma.h index 9318c0db24..51c200a351 100644 --- a/include/ruby/oniguruma.h +++ b/include/ruby/oniguruma.h @@ -216,6 +216,9 @@ typedef struct OnigEncodingTypeST { int (*is_allowed_reverse_match)(const OnigUChar* p, const OnigUChar* end, const struct OnigEncodingTypeST* enc); int ruby_encoding_index; unsigned int flags; +#ifdef ONIG_CASE_MAPPING + int (*case_map)(OnigCaseFoldType* flagP, const OnigUChar** pp, const OnigUChar* end, OnigUChar* to, OnigUChar* to_end, const struct OnigEncodingTypeST* enc); +#endif /* ONIG_CASE_MAPPING */ } OnigEncodingType; typedef const OnigEncodingType* OnigEncoding; -- cgit v1.2.3