diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-12-10 17:47:04 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-12-10 17:47:04 +0000 |
commit | 1b7d03b9d0d60d4dede7d38739503e59a8b25d06 (patch) | |
tree | deb58ca3dc6d6cd71c1740e62aa7e47bea5ed37e /enc/windows_1253.c | |
parent | 5a5ea533fd8c5c95ca0dcd5e4cce2558ebba62c5 (diff) | |
download | ruby-1b7d03b9d0d60d4dede7d38739503e59a8b25d06.tar.gz |
Merge Onigmo 6.0.0
* https://github.com/k-takata/Onigmo/blob/Onigmo-6.0.0/HISTORY
* fix for ruby 2.4: https://github.com/k-takata/Onigmo/pull/78
* suppress warning: https://github.com/k-takata/Onigmo/pull/79
* include/ruby/oniguruma.h: include onigmo.h.
* template/encdb.h.tmpl: ignore duplicated definition of EUC-CN in
enc/euc_kr.c. It is defined in enc/gb2313.c with CRuby macro.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enc/windows_1253.c')
-rw-r--r-- | enc/windows_1253.c | 43 |
1 files changed, 22 insertions, 21 deletions
diff --git a/enc/windows_1253.c b/enc/windows_1253.c index 2157b55c99..9e9c63a581 100644 --- a/enc/windows_1253.c +++ b/enc/windows_1253.c @@ -214,62 +214,63 @@ get_case_fold_codes_by_str(OnigCaseFoldType flag, } static int -case_map (OnigCaseFoldType* flagP, const OnigUChar** pp, - const OnigUChar* end, OnigUChar* to, OnigUChar* to_end, - const struct OnigEncodingTypeST* enc) +case_map(OnigCaseFoldType* flagP, const OnigUChar** pp, + const OnigUChar* end, OnigUChar* to, OnigUChar* to_end, + const struct OnigEncodingTypeST* enc) { OnigCodePoint code; OnigUChar *to_start = to; OnigCaseFoldType flags = *flagP; - while (*pp<end && to<to_end) { + while (*pp < end && to < to_end) { code = *(*pp)++; - if (code==0xF2) { - if (flags&ONIGENC_CASE_UPCASE) { + if (code == 0xF2) { + if (flags & ONIGENC_CASE_UPCASE) { flags |= ONIGENC_CASE_MODIFIED; code = 0xD3; } - else if (flags&ONIGENC_CASE_FOLD) { + else if (flags & ONIGENC_CASE_FOLD) { flags |= ONIGENC_CASE_MODIFIED; code = 0xF3; } } - else if (code==0xB5) { - if (flags&ONIGENC_CASE_UPCASE) { + else if (code == 0xB5) { + if (flags & ONIGENC_CASE_UPCASE) { flags |= ONIGENC_CASE_MODIFIED; code = 0xCC; } - else if (flags&ONIGENC_CASE_FOLD) { + else if (flags & ONIGENC_CASE_FOLD) { flags |= ONIGENC_CASE_MODIFIED; code = 0xEC; } } - else if (code==0xC0 || code==0xE0 || code==0xB6) ; + else if (code == 0xC0 || code == 0xE0 || code == 0xB6) + ; else if ((EncCP1253_CtypeTable[code] & BIT_CTYPE_UPPER) - && (flags & (ONIGENC_CASE_DOWNCASE|ONIGENC_CASE_FOLD))) { + && (flags & (ONIGENC_CASE_DOWNCASE | ONIGENC_CASE_FOLD))) { flags |= ONIGENC_CASE_MODIFIED; code = ENC_CP1253_TO_LOWER_CASE(code); } else if ((EncCP1253_CtypeTable[code] & BIT_CTYPE_LOWER) - && (flags&ONIGENC_CASE_UPCASE)) { + && (flags & ONIGENC_CASE_UPCASE)) { flags |= ONIGENC_CASE_MODIFIED; - if (code==0xDC) + if (code == 0xDC) code = 0xA2; - else if (code>=0xDD && code<=0xDF) + else if (code >= 0xDD && code <= 0xDF) code -= 0x25; - else if (code==0xFC) + else if (code == 0xFC) code = 0xBC; - else if (code==0xFD || code==0xFE) + else if (code == 0xFD || code == 0xFE) code -= 0x3F; else code -= 0x20; } *to++ = code; - if (flags&ONIGENC_CASE_TITLECASE) /* switch from titlecase to lowercase for capitalize */ - flags ^= (ONIGENC_CASE_UPCASE|ONIGENC_CASE_DOWNCASE|ONIGENC_CASE_TITLECASE); + if (flags & ONIGENC_CASE_TITLECASE) /* switch from titlecase to lowercase for capitalize */ + flags ^= (ONIGENC_CASE_UPCASE | ONIGENC_CASE_DOWNCASE | ONIGENC_CASE_TITLECASE); } *flagP = flags; - return (int)(to-to_start); + return (int )(to - to_start); } OnigEncodingDefine(windows_1253, Windows_1253) = { @@ -289,8 +290,8 @@ OnigEncodingDefine(windows_1253, Windows_1253) = { onigenc_not_support_get_ctype_code_range, onigenc_single_byte_left_adjust_char_head, onigenc_always_true_is_allowed_reverse_match, + case_map, 0, ONIGENC_FLAG_NONE, - case_map, }; ENC_ALIAS("CP1253", "Windows-1253") |