pub struct TimeInt(Option<NonMinI64>);
Expand description
A 64-bit number describing either nanoseconds, sequence numbers or fully static data.
Must be matched with a crate::TimeType
to know what.
Used both for time points and durations.
Tuple Fields§
§0: Option<NonMinI64>
Implementations§
source§impl TimeInt
impl TimeInt
sourcepub const STATIC: TimeInt = _
pub const STATIC: TimeInt = _
Special value used to represent static data.
It is illegal to create a TimeInt
with that value in a temporal context.
SDK users cannot log data at that timestamp explicitly, the only way to do so is to use the timeless APIs.
sourcepub const MIN: TimeInt = _
pub const MIN: TimeInt = _
Value used to represent the minimal temporal value a TimeInt
can hold.
This is not i64::MIN
, as that is a special value reserved as a marker for static
data (see Self::STATIC
).
sourcepub const MAX: TimeInt = _
pub const MAX: TimeInt = _
Value used to represent the maximum temporal value a TimeInt
can hold.
pub const ZERO: TimeInt = _
pub const ONE: TimeInt = _
pub fn is_static(self) -> bool
sourcepub fn new_temporal(time: i64) -> TimeInt
pub fn new_temporal(time: i64) -> TimeInt
Creates a new temporal TimeInt
.
If time
is i64::MIN
, this will return TimeInt::MIN
.
This can’t return TimeInt::STATIC
, ever.
sourcepub fn from_nanos(nanos: NonMinI64) -> TimeInt
pub fn from_nanos(nanos: NonMinI64) -> TimeInt
For time timelines.
sourcepub fn from_milliseconds(millis: NonMinI64) -> TimeInt
pub fn from_milliseconds(millis: NonMinI64) -> TimeInt
For time timelines.
sourcepub fn from_seconds(seconds: NonMinI64) -> TimeInt
pub fn from_seconds(seconds: NonMinI64) -> TimeInt
For time timelines.
sourcepub fn from_sequence(sequence: NonMinI64) -> TimeInt
pub fn from_sequence(sequence: NonMinI64) -> TimeInt
For sequence timelines.
sourcepub const fn as_i64(self) -> i64
pub const fn as_i64(self) -> i64
Returns i64::MIN
for Self::STATIC
.
sourcepub const fn as_f64(self) -> f64
pub const fn as_f64(self) -> f64
Returns f64::MIN
for Self::STATIC
.
sourcepub fn inc(self) -> TimeInt
pub fn inc(self) -> TimeInt
Always returns Self::STATIC
for Self::STATIC
.
sourcepub fn dec(self) -> TimeInt
pub fn dec(self) -> TimeInt
Always returns Self::STATIC
for Self::STATIC
.
Trait Implementations§
source§impl<'de> Deserialize<'de> for TimeInt
impl<'de> Deserialize<'de> for TimeInt
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<TimeInt, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<TimeInt, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl Ord for TimeInt
impl Ord for TimeInt
source§impl PartialEq<TimeReal> for TimeInt
impl PartialEq<TimeReal> for TimeInt
source§impl PartialEq for TimeInt
impl PartialEq for TimeInt
source§impl PartialOrd<TimeReal> for TimeInt
impl PartialOrd<TimeReal> for TimeInt
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl PartialOrd for TimeInt
impl PartialOrd for TimeInt
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for TimeInt
impl Serialize for TimeInt
source§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,
source§impl SizeBytes for TimeInt
impl SizeBytes for TimeInt
source§fn heap_size_bytes(&self) -> u64
fn heap_size_bytes(&self) -> u64
self
on the heap, in bytes.source§fn total_size_bytes(&self) -> u64
fn total_size_bytes(&self) -> u64
self
in bytes, accounting for both stack and heap space.source§fn stack_size_bytes(&self) -> u64
fn stack_size_bytes(&self) -> u64
self
on the stack, in bytes. Read moreimpl Copy for TimeInt
impl Eq for TimeInt
impl StructuralPartialEq for TimeInt
Auto Trait Implementations§
impl Freeze for TimeInt
impl RefUnwindSafe for TimeInt
impl Send for TimeInt
impl Sync for TimeInt
impl Unpin for TimeInt
impl UnwindSafe for TimeInt
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
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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> ⓘ
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> ⓘ
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