pub struct HlcTimestamp(/* private fields */);Expand description
A 64-bit hybrid logical clock timestamp.
Layout: [physical_ms : 48][logical : 16]. Total ordering is the
natural u64 ordering on the packed value. Tie-breaking across
nodes (when two HLC values are equal) is the caller’s concern —
the replication envelope appends node_id as a secondary key.
Implementations§
Source§impl HlcTimestamp
impl HlcTimestamp
Sourcepub const ZERO: Self
pub const ZERO: Self
Zero / sentinel value. Less than any real timestamp; useful for “no last-applied yet” cases.
Sourcepub const fn new(physical_ms: u64, logical: u16) -> Self
pub const fn new(physical_ms: u64, logical: u16) -> Self
Compose from physical milliseconds and logical counter.
Panics if physical_ms overflows 48 bits (year ~10880) or
logical overflows 16 bits.
Sourcepub const fn physical_ms(&self) -> u64
pub const fn physical_ms(&self) -> u64
Physical milliseconds since UNIX epoch.
Trait Implementations§
Source§impl Clone for HlcTimestamp
impl Clone for HlcTimestamp
Source§fn clone(&self) -> HlcTimestamp
fn clone(&self) -> HlcTimestamp
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for HlcTimestamp
Source§impl Debug for HlcTimestamp
impl Debug for HlcTimestamp
Source§impl<'de> Deserialize<'de> for HlcTimestamp
impl<'de> Deserialize<'de> for HlcTimestamp
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 Display for HlcTimestamp
impl Display for HlcTimestamp
impl Eq for HlcTimestamp
Source§impl Hash for HlcTimestamp
impl Hash for HlcTimestamp
Source§impl Ord for HlcTimestamp
impl Ord for HlcTimestamp
Source§fn cmp(&self, other: &HlcTimestamp) -> Ordering
fn cmp(&self, other: &HlcTimestamp) -> Ordering
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 PartialEq for HlcTimestamp
impl PartialEq for HlcTimestamp
Source§fn eq(&self, other: &HlcTimestamp) -> bool
fn eq(&self, other: &HlcTimestamp) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for HlcTimestamp
impl PartialOrd for HlcTimestamp
Source§impl Serialize for HlcTimestamp
impl Serialize for HlcTimestamp
impl StructuralPartialEq for HlcTimestamp
Auto Trait Implementations§
impl Freeze for HlcTimestamp
impl RefUnwindSafe for HlcTimestamp
impl Send for HlcTimestamp
impl Sync for HlcTimestamp
impl Unpin for HlcTimestamp
impl UnsafeUnpin for HlcTimestamp
impl UnwindSafe for HlcTimestamp
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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§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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> ToEcoString for T
impl<T> ToEcoString for T
Source§fn to_eco_string(&self) -> EcoString
fn to_eco_string(&self) -> EcoString
Converts the given value to an
EcoString.