#![cfg_attr(not(feature = "std"), no_std)]
extern crate core;
#[cfg(not(any(feature = "std", feature = "alloc")))]
compile_error!("Either feature `std` or `alloc` must be enabled for this crate.");
#[cfg(all(feature = "std", feature = "alloc"))]
compile_error!("Feature `std` and `alloc` can't be enabled at the same time.");
#[cfg(not(any(feature = "moka", feature = "lru")))]
compile_error!("Either feature `moka` or `lru` must be enabled for this crate.");
#[cfg(all(feature = "moka", feature = "lru"))]
compile_error!("Feature `moka` and `lru` can't be enabled at the same time.");
pub mod kernel;
pub mod system;
pub mod transaction;
pub mod blueprints;
pub mod track;
pub mod types;
pub mod errors;
pub mod utils;
pub mod vm;
pub mod prelude {
pub use crate::types::*;
}
pub(crate) mod internal_prelude {
pub use super::prelude::*;
pub use crate::blueprints::internal_prelude::*;
pub use crate::errors::*;
pub use crate::system::system_substates::*;
pub use crate::{event_schema, method_auth_template, roles_template};
}