stak_time/clock.rs
1#[cfg(feature = "libc")]
2mod libc;
3#[cfg(feature = "std")]
4mod os;
5mod void;
6
7use core::error::Error;
8#[cfg(feature = "libc")]
9pub use libc::LibcClock;
10#[cfg(feature = "std")]
11pub use os::OsClock;
12use stak_vm::Number;
13pub use void::VoidClock;
14
15/// A clock.
16pub trait Clock {
17 /// An error.
18 type Error: Error;
19
20 /// Returns a current jiffy.
21 fn current_jiffy(&self) -> Result<Number, Self::Error>;
22}