Crate unicode_case_mapping

Source
Expand description

Map a character to its lowercase, uppercase, or titlecase equivalent.

§Example

use std::num::NonZeroU32;

// U+0307 is COMBINING DOT ABOVE
assert_eq!(unicode_case_mapping::to_lowercase('İ'), ['i' as u32, 0x0307]);
assert_eq!(unicode_case_mapping::to_lowercase('ß'), [0; 2]);
assert_eq!(unicode_case_mapping::to_uppercase('ß'), ['S' as u32, 'S' as u32, 0]);
assert_eq!(unicode_case_mapping::to_titlecase('ß'), ['S' as u32, 's' as u32, 0]);
assert_eq!(unicode_case_mapping::to_titlecase('-'), [0; 3]);
assert_eq!(unicode_case_mapping::case_folded('I'), NonZeroU32::new('i' as u32));
assert_eq!(unicode_case_mapping::case_folded('ß'), None);
assert_eq!(unicode_case_mapping::case_folded('ẞ'), NonZeroU32::new('ß' as u32));

Constants§

UNICODE_VERSION
The version of Unicode that this version of unicode-case-mapping was generated from.

Functions§

case_folded
Map the supplied character to its case-folded equivalent.
to_lowercase
Map the supplied character to its lowercase equivalent.
to_titlecase
Map the supplied character to its titlecase equivalent.
to_uppercase
Map the supplied character to its uppercase equivalent.