We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent d480cef commit e159d42Copy full SHA for e159d42
src/tools/unicode-table-generator/src/case_mapping.rs
@@ -41,18 +41,26 @@ impl fmt::Debug for CharEscape {
41
}
42
43
44
-static HEADER: &str = "
+static HEADER: &str = r"
45
pub fn to_lower(c: char) -> [char; 3] {
46
- match bsearch_case_table(c, LOWERCASE_TABLE) {
47
- None => [c, '\\0', '\\0'],
48
- Some(index) => LOWERCASE_TABLE[index].1,
+ if c.is_ascii() {
+ [(c as u8).to_ascii_lowercase() as char, '\0', '\0']
+ } else {
49
+ match bsearch_case_table(c, LOWERCASE_TABLE) {
50
+ None => [c, '\0', '\0'],
51
+ Some(index) => LOWERCASE_TABLE[index].1,
52
+ }
53
54
55
56
pub fn to_upper(c: char) -> [char; 3] {
- match bsearch_case_table(c, UPPERCASE_TABLE) {
- Some(index) => UPPERCASE_TABLE[index].1,
57
58
+ [(c as u8).to_ascii_uppercase() as char, '\0', '\0']
59
60
+ match bsearch_case_table(c, UPPERCASE_TABLE) {
61
62
+ Some(index) => UPPERCASE_TABLE[index].1,
63
64
65
66
0 commit comments