pub mod executor;
pub mod frame;
pub mod microtask;
pub mod queue;
pub mod scheduler;
pub mod task;
pub mod timer;
pub mod waker;
pub use executor::{LocalExecutor, TaskId};
pub use frame::{FrameInfo, FrameScheduler, FrameTiming};
pub use microtask::{Microtask, MicrotaskQueue};
pub use queue::{TaskQueue, TaskQueueManager};
pub use scheduler::{Scheduler, TickResult};
pub use task::{Task, TaskPriority};
pub use waker::{CrossThreadTask, SendError, WakeReceiver, WakeSender, cross_thread_channel};
#[cfg(test)]
mod send_sync_tests {
use super::*;
const _: fn() = || {
fn assert_send_clone<T: Send + Clone>() {}
assert_send_clone::<WakeSender>();
};
const _: fn() = || {
fn assert_send<T: Send>() {}
assert_send::<CrossThreadTask>();
};
#[test]
fn send_types_are_send() {
fn assert_send<T: Send>() {}
assert_send::<WakeSender>();
assert_send::<CrossThreadTask>();
}
}