pub trait Runtime {
// Required methods
fn clock_ref(&self) -> &Arc<Mutex<Clock>>;
fn yield_now(&self) -> RuntimeFuture;
fn sleep(&self, duration: Duration) -> RuntimeFuture;
fn create_interval(&self, duration: Duration) -> Interval;
fn now(&self) -> Instant;
fn elapsed_since(&self, start: Instant) -> u64;
fn next_u64(&self) -> u64;
}