#![deny(warnings)]
#![doc(test(attr(deny(warnings))))]
#![doc(test(attr(allow(dead_code))))]
#![doc(test(attr(allow(unused_variables))))]
#![no_std]
extern crate alloc;
use alloc::boxed::Box;
pub use tuifw_screen_base::*;
pub unsafe fn init() -> Result<Box<dyn Screen>, Error> {
init_raw()
}
#[cfg(target_os="dos")]
unsafe fn init_raw() -> Result<Box<dyn Screen>, Error> {
Ok(Box::new(tuifw_screen_dos::Screen::new()?) as _)
}
#[cfg(all(not(target_os="dos"), windows))]
unsafe fn init_raw() -> Result<Box<dyn Screen>, Error> {
Ok(Box::new(tuifw_screen_winapi::Screen::new()?) as _)
}
#[cfg(all(not(target_os="dos"), not(windows)))]
unsafe fn init_raw() -> Result<Box<dyn Screen>, Error> {
tuifw_screen_ncurses::init()
}