mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-08-05 07:27:46 +00:00
expand, unexpand: fix build on stable
This commit is contained in:
parent
0a3a2ca935
commit
512a6a3201
2 changed files with 29 additions and 0 deletions
|
@ -7,6 +7,7 @@ mod macros;
|
||||||
|
|
||||||
pub mod fs;
|
pub mod fs;
|
||||||
pub mod parse_time;
|
pub mod parse_time;
|
||||||
|
pub mod utf8;
|
||||||
|
|
||||||
#[cfg(unix)] pub mod c_types;
|
#[cfg(unix)] pub mod c_types;
|
||||||
#[cfg(unix)] pub mod process;
|
#[cfg(unix)] pub mod process;
|
||||||
|
|
28
src/uucore/utf8.rs
Normal file
28
src/uucore/utf8.rs
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
/* This is taken from the rust_unicode crate. Remove once 'unicode' becomes stable */
|
||||||
|
|
||||||
|
// https://tools.ietf.org/html/rfc3629
|
||||||
|
static UTF8_CHAR_WIDTH: [u8; 256] = [
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 0x1F
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 0x3F
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 0x5F
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
||||||
|
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // 0x7F
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 0x9F
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 0xBF
|
||||||
|
0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
||||||
|
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, // 0xDF
|
||||||
|
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, // 0xEF
|
||||||
|
4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0, // 0xFF
|
||||||
|
];
|
||||||
|
|
||||||
|
/// Given a first byte, determine how many bytes are in this UTF-8 character
|
||||||
|
#[inline]
|
||||||
|
pub fn utf8_char_width(b: u8) -> usize {
|
||||||
|
return UTF8_CHAR_WIDTH[b as usize] as usize;
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue