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;
12pub use void::VoidClock;
13
14/// A clock.
15pub trait Clock {
16    /// An error.
17    type Error: Error;
18
19    /// Returns a current jiffy.
20    fn current_jiffy(&self) -> Result<u64, Self::Error>;
21
22    /// Returns jiffies per second.
23    fn jiffies_per_second(&self) -> u64;
24}