1 // SPDX-License-Identifier: GPL-2.0 2 3 pub(crate) const fn to_lowercase_bytes<const N: usize>(s: &str) -> [u8; N] { 4 let src = s.as_bytes(); 5 let mut dst = [0; N]; 6 let mut i = 0; 7 8 while i < src.len() && i < N { 9 dst[i] = (src[i] as char).to_ascii_lowercase() as u8; 10 i += 1; 11 } 12 13 dst 14 } 15 16 pub(crate) const fn const_bytes_to_str(bytes: &[u8]) -> &str { 17 match core::str::from_utf8(bytes) { 18 Ok(string) => string, 19 Err(_) => kernel::build_error!("Bytes are not valid UTF-8."), 20 } 21 } 22