stak_time/
clock.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#[cfg(feature = "libc")]
mod libc;
#[cfg(feature = "std")]
mod os;
mod void;

use core::error::Error;
#[cfg(feature = "libc")]
pub use libc::LibcClock;
#[cfg(feature = "std")]
pub use os::OsClock;
use stak_vm::Number;
pub use void::VoidClock;

/// A clock.
pub trait Clock {
    /// An error.
    type Error: Error;

    /// Returns a current jiffy.
    fn current_jiffy(&self) -> Result<Number, Self::Error>;
}