From 475df06021264b22cf425500fe2503a06c38ba6f Mon Sep 17 00:00:00 2001 From: hhugo Date: Sat, 4 Jan 2020 22:15:52 +0800 Subject: [PATCH] stdlib: cleanup in Char.ml by using char range patterns (#9221) stdlib/char.ml: [minor] use range patterns for {lowercase,uppercase} functions --- stdlib/char.ml | 38 ++++++++++++++++++-------------------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/stdlib/char.ml b/stdlib/char.ml index fb7660d07..052949d0a 100644 --- a/stdlib/char.ml +++ b/stdlib/char.ml @@ -46,29 +46,27 @@ let escaped = function bytes_unsafe_set s 3 (unsafe_chr (48 + n mod 10)); unsafe_to_string s -let lowercase c = - if (c >= 'A' && c <= 'Z') - || (c >= '\192' && c <= '\214') - || (c >= '\216' && c <= '\222') - then unsafe_chr(code c + 32) - else c +let lowercase = function + | 'A' .. 'Z' + | '\192' .. '\214' + | '\216' .. '\222' as c -> + unsafe_chr(code c + 32) + | c -> c -let uppercase c = - if (c >= 'a' && c <= 'z') - || (c >= '\224' && c <= '\246') - || (c >= '\248' && c <= '\254') - then unsafe_chr(code c - 32) - else c +let uppercase = function + | 'a' .. 'z' + | '\224' .. '\246' + | '\248' .. '\254' as c -> + unsafe_chr(code c - 32) + | c -> c -let lowercase_ascii c = - if (c >= 'A' && c <= 'Z') - then unsafe_chr(code c + 32) - else c +let lowercase_ascii = function + | 'A' .. 'Z' as c -> unsafe_chr(code c + 32) + | c -> c -let uppercase_ascii c = - if (c >= 'a' && c <= 'z') - then unsafe_chr(code c - 32) - else c +let uppercase_ascii = function + | 'a' .. 'z' as c -> unsafe_chr(code c - 32) + | c -> c type t = char