pub struct Time(/* private fields */);Expand description
A UNIX timestamp, seconds since epoch, guaranteed to always contain a valid time value.
Note that there is no manipulation of the inner value during construction or when using
to_consensus_u32(). Said another way, Time(x) means ‘x seconds since epoch’ not ‘(x -
threshold) seconds since epoch’.
Implementations§
Source§impl Time
impl Time
Sourcepub const fn min_value() -> Self
pub const fn min_value() -> Self
The minimum absolute block time.
This is provided for consistency with Rust 1.41.1, newer code should use Time::MIN.
Sourcepub const fn max_value() -> Self
pub const fn max_value() -> Self
The maximum absolute block time.
This is provided for consistency with Rust 1.41.1, newer code should use Time::MAX.
Sourcepub fn from_consensus(n: u32) -> Result<Time, Error>
pub fn from_consensus(n: u32) -> Result<Time, Error>
Constructs a new block time.
§Errors
If n does not encode a UNIX time stamp (see documentation on LockTime).
§Examples
use bitnet::locktime::absolute::Time;
let t: u32 = 1653195600; // May 22nd, 5am UTC.
let time = Time::from_consensus(t).expect("invalid time value");
assert_eq!(time.to_consensus_u32(), t);Sourcepub fn to_consensus_u32(self) -> u32
pub fn to_consensus_u32(self) -> u32
Converts this Time to its inner u32 value.
§Examples
use bitnet::absolute::LockTime;
let n_lock_time: u32 = 1653195600; // May 22nd, 5am UTC.
let lock_time = LockTime::from_consensus(n_lock_time);
assert_eq!(lock_time.to_consensus_u32(), n_lock_time);Trait Implementations§
Source§impl<'de> Deserialize<'de> for Time
impl<'de> Deserialize<'de> for Time
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl FromHexStr for Time
impl FromHexStr for Time
Source§impl Ord for Time
impl Ord for Time
Source§impl PartialOrd for Time
impl PartialOrd for Time
impl Copy for Time
impl Eq for Time
impl StructuralPartialEq for Time
Auto Trait Implementations§
impl Freeze for Time
impl RefUnwindSafe for Time
impl Send for Time
impl Sync for Time
impl Unpin for Time
impl UnwindSafe for Time
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more