use std::sync::atomic::{AtomicBool, Ordering};
static IS_RTL: AtomicBool = AtomicBool::new(false);
pub fn set_rtl(rtl: bool) {
IS_RTL.store(rtl, Ordering::Relaxed);
}
pub fn is_rtl() -> bool {
IS_RTL.load(Ordering::Relaxed)
}
pub const BODY_PX: f32 = 36.0;
pub fn slice_as_bytes<T>(buf: &[T]) -> &[u8] {
unsafe { std::slice::from_raw_parts(buf.as_ptr() as *const u8, std::mem::size_of_val(buf)) }
}
pub fn slice_as_bytes_mut<T>(buf: &mut [T]) -> &mut [u8] {
unsafe {
std::slice::from_raw_parts_mut(buf.as_mut_ptr() as *mut u8, std::mem::size_of_val(buf))
}
}