#![no_std]
#![deny(
clippy::panic,
clippy::panic_in_result_fn,
clippy::string_slice,
clippy::unchecked_time_subtraction
)]
#![warn(clippy::unreachable, clippy::unimplemented, clippy::todo)]
use gneiss_types::{
self,
header::{DEFAULT_HEADER, PebbleProcessInfo},
};
mutually_exclusive_features::exactly_one_of!(
"emery", "flint", "gabbro", "aplite", "basalt", "chalk", "diorite"
);
mod mem;
pub mod panic;
mod shim;
#[allow(
warnings,
clippy::all,
clippy::pedantic,
clippy::nursery,
clippy::restriction
)]
#[cfg_attr(feature = "emery", path = "platform/emery.rs")]
#[cfg_attr(feature = "flint", path = "platform/flint.rs")]
#[cfg_attr(feature = "gabbro", path = "platform/gabbro.rs")]
#[cfg_attr(feature = "aplite", path = "platform/aplite.rs")]
#[cfg_attr(feature = "basalt", path = "platform/basalt.rs")]
#[cfg_attr(feature = "chalk", path = "platform/chalk.rs")]
#[cfg_attr(feature = "diorite", path = "platform/diorite.rs")]
mod sys_raw;
pub use sys_raw::*;
#[used]
#[unsafe(link_section = ".pbl_header")]
pub static PBL_HEADER: PebbleProcessInfo = DEFAULT_HEADER;