open_cl_low_level/strings.rs
1use std::ffi::CString;
2
3pub fn to_c_string(string: &str) -> Option<CString> {
4 CString::new(string).ok()
5}
6
7pub fn to_utf8_string(buffer: Vec<u8>) -> String {
8 let safe_vec = buffer.into_iter().filter(|c| *c != 0u8).collect();
9 String::from_utf8(safe_vec).unwrap_or_else(|err| {
10 panic!("Failed to turn buffer (Vec<u8>) to UTF8 string. {:?}", err);
11 })
12}