maverick_os 0.2.2

Maverick OS
Documentation
/// Cross platform logger to provide a simple and diverse way to start logging,
/// with a specifed level across different platforms Android and WASM and other std desktop targets.
/// ```rust
/// log::info!(target: "Maverick OS", "Hey, Maverick OS is up and running!");
///```
pub struct Logger;

impl Logger {
    pub fn start (level: Option<log::Level>) {
        let level = level.unwrap_or(log::Level::Info);
        #[cfg(target_os="android")]
        {
            android_logger::init_once(
                android_logger::Config::default().with_max_level(level.to_level_filter()),
            );
        }

        #[cfg(target_arch="wasm32")]
        {
            std::panic::set_hook(Box::new(console_error_panic_hook::hook));
            console_log::init_with_level(level).expect("Couldn't initialize logger");
        }

        #[cfg(not(any(target_os="android", target_arch="wasm32")))]
        {
            env_logger::builder().filter_level(level.to_level_filter()).init();
        }
    }
}