pub struct Timestamp(/* private fields */);Expand description
8-byte-aligned u64 newtype that serializes as a string for JSON safety.
Implementations§
Source§impl Timestamp
impl Timestamp
Sourcepub fn now() -> Self
pub fn now() -> Self
Current wall-clock time. May move backward if the system clock is adjusted.
Sourcepub fn now_non_decreasing() -> Self
pub fn now_non_decreasing() -> Self
Current time, clamped to never read earlier than a previous call. Repeated values are allowed.
Sourcepub fn now_increasing() -> Self
pub fn now_increasing() -> Self
Current time, clamped to always read at least 1us later than a previous call. Never repeats a value.
Sourcepub fn later(self, rhs: TimestampDuration) -> Self
pub fn later(self, rhs: TimestampDuration) -> Self
Timestamp shifted later by a duration, saturating at the maximum value.
Sourcepub fn earlier(self, rhs: TimestampDuration) -> Self
pub fn earlier(self, rhs: TimestampDuration) -> Self
Timestamp shifted earlier by a duration, saturating at zero.
Sourcepub fn duration_since(self, older: Self) -> TimestampDuration
pub fn duration_since(self, older: Self) -> TimestampDuration
Duration from older to this timestamp, saturating to zero if older is later.
Trait Implementations§
impl Copy for Timestamp
Source§impl<'de> Deserialize<'de> for Timestamp
impl<'de> Deserialize<'de> for Timestamp
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
impl Eq for Timestamp
Source§impl From<&AtomicTimestamp> for Timestamp
impl From<&AtomicTimestamp> for Timestamp
Source§fn from(at: &AtomicTimestamp) -> Self
fn from(at: &AtomicTimestamp) -> Self
Converts to this type from the input type.
Source§impl From<AtomicTimestamp> for Timestamp
impl From<AtomicTimestamp> for Timestamp
Source§fn from(at: AtomicTimestamp) -> Self
fn from(at: AtomicTimestamp) -> Self
Converts to this type from the input type.
Source§impl From<Timestamp> for AtomicOptionTimestamp
impl From<Timestamp> for AtomicOptionTimestamp
Source§impl From<Timestamp> for AtomicTimestamp
impl From<Timestamp> for AtomicTimestamp
Source§impl GetSize for Timestamp
impl GetSize for Timestamp
Source§fn get_heap_size(&self) -> usize
fn get_heap_size(&self) -> usize
Determines how many bytes this object occupies inside the heap. Read more
Source§fn get_heap_size_with_tracker<TRACKER: GetSizeTracker>(
&self,
tracker: TRACKER,
) -> (usize, TRACKER)
fn get_heap_size_with_tracker<TRACKER: GetSizeTracker>( &self, tracker: TRACKER, ) -> (usize, TRACKER)
Determines how many bytes this object occupies inside the heap while using a
tracker. Read moreSource§fn get_stack_size() -> usize
fn get_stack_size() -> usize
Determines how may bytes this object occupies inside the stack. Read more
Source§fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)where
T: GetSizeTracker,
fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)where
T: GetSizeTracker,
Determines the total size of the object while using a
tracker. Read moreSource§impl Ord for Timestamp
impl Ord for Timestamp
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for Timestamp
impl PartialOrd for Timestamp
impl StructuralPartialEq for Timestamp
Source§impl ToVeilidAPIErrorArgument for Timestamp
impl ToVeilidAPIErrorArgument for Timestamp
Source§fn to_veilid_api_error_argument(&self) -> String
fn to_veilid_api_error_argument(&self) -> String
Render this value as a string for inclusion in a VeilidAPIError message field.
Auto Trait Implementations§
impl Freeze for Timestamp
impl RefUnwindSafe for Timestamp
impl Send for Timestamp
impl Sync for Timestamp
impl Unpin for Timestamp
impl UnsafeUnpin for Timestamp
impl UnwindSafe for Timestamp
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CmpAssign for Twhere
T: Ord,
impl<T> CmpAssign for Twhere
T: Ord,
Source§fn min_assign(&mut self, other: T)
fn min_assign(&mut self, other: T)
Replace
self with other if other is smaller.Source§fn max_assign(&mut self, other: T)
fn max_assign(&mut self, other: T)
Replace
self with other if other is larger.Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more