#![forbid(unsafe_code)]
#![warn(missing_docs, clippy::all, clippy::pedantic)]
#![allow(clippy::module_name_repetitions)]
mod executor;
mod scope;
pub mod timer;
#[cfg(feature = "debug")]
mod debug;
#[cfg(feature = "debug")]
pub use debug::dump_task_tree;
pub use executor::{
init_flush_scheduler, init_time_source, remove_panic_hook, reset_executor_for_test,
schedule_callback, set_deferred, set_global_time_budget, set_panic_hook, spawn_global,
spawn_global_with_priority, with_executor, yield_now, Executor, PanicInfo, ScheduleFlush,
TimeSource, YieldNow,
};
#[cfg(test)]
pub use executor::{TestScheduleFlush, TestTimeSource};
#[cfg(feature = "debug")]
pub use scope::scope_debug_label;
pub use scope::{
clear_scope_registry, current_scope, find_scope, set_scope_store, with_current_scope,
CallbackHandle, ScopeStore, TaskScope,
};
#[cfg(feature = "ssr-tokio")]
pub use scope::init_scope_store_tokio;
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
pub enum Priority {
High,
Low,
}