Crate utf8_width

Source
Expand description

§UTF-8 Width

To determine the width of a UTF-8 character by providing its first byte.

References: https://tools.ietf.org/html/rfc3629

§Examples

assert_eq!(1, utf8_width::get_width(b'1'));
assert_eq!(3, utf8_width::get_width("中".as_bytes()[0]));

§Benchmark

cargo bench

Constants§

MAX_0_1
MAX_0_2
MAX_1
MAX_2
MAX_3
MAX_4
MIN_0_1
MIN_0_2
MIN_1
MIN_2
MIN_3
MIN_4

Functions§

get_width
Given a first byte, determine how many bytes are in this UTF-8 character. If the UTF-8 character is invalid, return 0; otherwise, return 1 to 4.
get_width_assume_valid
Assuming the input first byte is from a valid UTF-8 character, determine how many bytes are in this UTF-8 character. It returns 1 to 4.
is_width_0
is_width_1
is_width_2
is_width_3
is_width_4