#[cfg(windows)]
pub mod win;
pub unsafe fn pwstr_to_string(ptr: *mut u16) -> String {
use std::slice::from_raw_parts;
let len = (0_usize..)
.find(|&n| *ptr.add(n) == 0)
.expect("Couldn't find null terminator");
let array: &[u16] = from_raw_parts(ptr, len);
String::from_utf16_lossy(array)
}
pub unsafe fn pstr_to_string(ptr: *mut i8) -> String {
use std::slice::from_raw_parts;
let len = (0_usize..)
.find(|&n| *ptr.add(n) == 0)
.expect("Couldn't find null terminator");
let array: &[u8] = from_raw_parts(ptr as *const u8, len);
String::from_utf8_lossy(array).to_string()
}