pub struct Timestamp {
pub seconds: u64,
pub nanos: u32,
}
Expand description
A timestamp relative to UNIX_EPOCH
.
Fields§
§seconds: u64
The number of whole seconds since UNIX_EPOCH
.
nanos: u32
The number of nanoseconds in the timestamp.
Implementations§
§impl Timestamp
impl Timestamp
pub const MAX: Timestamp = Self{ seconds: u64::MAX, nanos: 999999999,}
pub const MAX: Timestamp = Self{ seconds: u64::MAX, nanos: 999999999,}
The maximum valid value of Timestamp.
pub const MIN: Timestamp = Self{ seconds: 0, nanos: 0,}
pub const MIN: Timestamp = Self{ seconds: 0, nanos: 0,}
The minimum representable Timestamp. This is equivalent to UNIX_EPOCH
.
pub fn now() -> Timestamp
pub fn now() -> Timestamp
Returns the current timestamp according to the OS. Uses SystemTime::now()
.
Trait Implementations§
§impl<'de> Deserialize<'de> for Timestamp
impl<'de> Deserialize<'de> for Timestamp
§fn deserialize<__D>(
__deserializer: __D
) -> Result<Timestamp, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<Timestamp, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl From<SystemTime> for Timestamp
impl From<SystemTime> for Timestamp
§fn from(time: SystemTime) -> Timestamp
fn from(time: SystemTime) -> Timestamp
Converts to this type from the input type.
§impl<'k> Key<'k> for Timestamp
impl<'k> Key<'k> for Timestamp
§const CAN_OWN_BYTES: bool = false
const CAN_OWN_BYTES: bool = false
If true, this type can benefit from an owned
Vec<u8>
. This flag is
used as a hint of whether to attempt to do memcpy operations in some
decoding operations to avoid extra allocations.§fn from_ord_bytes<'e>(
bytes: ByteSource<'k, 'e>
) -> Result<Timestamp, <Timestamp as KeyEncoding<Timestamp>>::Error>
fn from_ord_bytes<'e>( bytes: ByteSource<'k, 'e> ) -> Result<Timestamp, <Timestamp as KeyEncoding<Timestamp>>::Error>
Deserialize a sequence of bytes previously encoded with
KeyEncoding::as_ord_bytes
.§fn first_value() -> Result<Self, NextValueError>
fn first_value() -> Result<Self, NextValueError>
Return the first value in sequence for this type. Not all types
implement this.
§fn next_value(&self) -> Result<Self, NextValueError>
fn next_value(&self) -> Result<Self, NextValueError>
Return the next value in sequence for this type. Not all types implement
this. Instead of wrapping/overflowing, None should be returned.
§impl KeyEncoding<Timestamp> for Timestamp
impl KeyEncoding<Timestamp> for Timestamp
§type Error = IncorrectByteLength
type Error = IncorrectByteLength
The error type that can be produced by either serialization or
deserialization.
§const LENGTH: Option<usize> = Some(12)
const LENGTH: Option<usize> = Some(12)
The size of the key, if constant. If this type doesn’t produce the same
number of bytes for each value, this should be
None
.§fn describe<Visitor>(visitor: &mut Visitor)where
Visitor: KeyVisitor,
fn describe<Visitor>(visitor: &mut Visitor)where Visitor: KeyVisitor,
Describes this type by invoking functions on
visitor
describing the
key being encoded. Read more§fn as_ord_bytes(
&self
) -> Result<Cow<'_, [u8]>, <Timestamp as KeyEncoding<Timestamp>>::Error>
fn as_ord_bytes( &self ) -> Result<Cow<'_, [u8]>, <Timestamp as KeyEncoding<Timestamp>>::Error>
Convert
self
into a Cow<'_, [u8]>
containing bytes that are able to be
compared via memcmp
in a way that is comptaible with its own Ord
implementation.§impl Ord for Timestamp
impl Ord for Timestamp
§impl PartialOrd<Timestamp> for Timestamp
impl PartialOrd<Timestamp> for Timestamp
§fn partial_cmp(&self, other: &Timestamp) -> Option<Ordering>
fn partial_cmp(&self, other: &Timestamp) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more§impl Serialize for Timestamp
impl Serialize for Timestamp
§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Timestamp
impl Eq for Timestamp
impl StructuralEq for Timestamp
impl StructuralPartialEq for Timestamp
Auto Trait Implementations§
impl RefUnwindSafe for Timestamp
impl Send for Timestamp
impl Sync for Timestamp
impl Unpin for Timestamp
impl UnwindSafe for Timestamp
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere T: 'a,
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<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.