#[repr(transparent)]pub struct Timestamp {
internal: u64,
}Expand description
System-wide timestamp type.
Fields§
§internal: u64note no pub.
Implementations§
Source§impl Timestamp
impl Timestamp
pub const MAX: Self
pub const MIN: Self
pub const fn new(timestamp: u64) -> Self
pub fn to_bytes(&self) -> [u8; 8]
pub fn from_bytes(bytes: [u8; 8]) -> Self
pub fn saturating_sub<I: Into<Self>>(self, rhs: I) -> Self
pub fn saturating_add<I: Into<Self>>(self, rhs: I) -> Self
pub fn saturating_mul<I: Into<Self>>(self, rhs: I) -> Self
pub fn checked_add<I: Into<Self>>(self, rhs: I) -> Option<Self>
pub fn checked_sub<I: Into<Self>>(self, rhs: I) -> Option<Self>
Sourcepub fn step_forward(&self) -> Self
pub fn step_forward(&self) -> Self
Advance a timestamp by the least amount possible such that
ts.less_than(ts.step_forward()) is true. Panic if unable to do so.
Sourcepub fn step_forward_by(&self, amount: &Self) -> Self
pub fn step_forward_by(&self, amount: &Self) -> Self
Advance a timestamp forward by the given amount. Panic if unable to do so.
Sourcepub fn try_step_forward(&self) -> Option<Self>
pub fn try_step_forward(&self) -> Option<Self>
Advance a timestamp by the least amount possible such that ts.less_than(ts.step_forward())
is true. Return None if unable to do so.
Sourcepub fn try_step_forward_by(&self, amount: &Self) -> Option<Self>
pub fn try_step_forward_by(&self, amount: &Self) -> Option<Self>
Advance a timestamp forward by the given amount. Return None if unable to do so.
Trait Implementations§
Source§impl Arbitrary for Timestamp
impl Arbitrary for Timestamp
Source§type Parameters = <u64 as Arbitrary>::Parameters
type Parameters = <u64 as Arbitrary>::Parameters
arbitrary_with accepts for configuration
of the generated Strategy. Parameters must implement Default.Source§type Strategy = Map<<u64 as Arbitrary>::Strategy, fn(u64) -> Timestamp>
type Strategy = Map<<u64 as Arbitrary>::Strategy, fn(u64) -> Timestamp>
Strategy used to generate values of type Self.Source§fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
Source§impl<'a> AsColumnType for Timestamp
impl<'a> AsColumnType for Timestamp
Source§fn as_column_type() -> SqlColumnType
fn as_column_type() -> SqlColumnType
Source§impl BucketTimestamp for Timestamp
impl BucketTimestamp for Timestamp
Source§impl Columnar for Timestamp
impl Columnar for Timestamp
Source§type Container = Timestamps<Vec<Timestamp>>
type Container = Timestamps<Vec<Timestamp>>
Source§fn into_owned<'a>(other: Ref<'a, Self>) -> Self
fn into_owned<'a>(other: Ref<'a, Self>) -> Self
Self from Self::Ref<'a>.Source§fn reborrow<'b, 'a: 'b>(thing: Ref<'a, Self>) -> Ref<'b, Self>where
Self: 'a,
fn reborrow<'b, 'a: 'b>(thing: Ref<'a, Self>) -> Ref<'b, Self>where
Self: 'a,
Source§fn copy_from<'a>(&mut self, other: <Self::Container as Container>::Ref<'a>)where
Self: Sized,
fn copy_from<'a>(&mut self, other: <Self::Container as Container>::Ref<'a>)where
Self: Sized,
self from a reference. Read moreSource§fn as_columns<'a, I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = &'a Self>,
Self: 'a,
fn as_columns<'a, I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = &'a Self>,
Self: 'a,
Source§fn into_columns<I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = Self>,
Self: Sized,
fn into_columns<I>(selves: I) -> Self::Containerwhere
I: IntoIterator<Item = Self>,
Self: Sized,
Source§impl Columnation for Timestamp
impl Columnation for Timestamp
Source§type InnerRegion = CopyRegion<Timestamp>
type InnerRegion = CopyRegion<Timestamp>
Self type. Note: not allocations of Self, but of the
things that it owns.Source§impl<'a, E> DatumType<'a, E> for Timestamp
impl<'a, E> DatumType<'a, E> 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>,
Source§impl Lattice for Timestamp
impl Lattice for Timestamp
Source§fn join(&self, other: &Self) -> Self
fn join(&self, other: &Self) -> Self
Source§fn meet(&self, other: &Self) -> Self
fn meet(&self, other: &Self) -> Self
Source§fn join_assign(&mut self, other: &Self)where
Self: Sized,
fn join_assign(&mut self, other: &Self)where
Self: Sized,
self to the smallest element greater than or equal to both arguments. Read moreSource§fn meet_assign(&mut self, other: &Self)where
Self: Sized,
fn meet_assign(&mut self, other: &Self)where
Self: Sized,
self to the largest element less than or equal to both arguments. Read moreSource§fn advance_by(&mut self, frontier: AntichainRef<'_, Self>)where
Self: Sized,
fn advance_by(&mut self, frontier: AntichainRef<'_, Self>)where
Self: Sized,
frontier. Read moreSource§impl Ord for Timestamp
impl Ord for Timestamp
Source§impl PartialOrd for Timestamp
impl PartialOrd for Timestamp
Source§impl PartialOrder<&Timestamp> for Timestamp
impl PartialOrder<&Timestamp> for Timestamp
Source§impl PartialOrder<Timestamp> for &Timestamp
impl PartialOrder<Timestamp> for &Timestamp
Source§impl PartialOrder for Timestamp
impl PartialOrder for Timestamp
Source§impl PathSummary<Timestamp> for Timestamp
impl PathSummary<Timestamp> for Timestamp
Source§impl RustType<ProtoTimestamp> for Timestamp
impl RustType<ProtoTimestamp> for Timestamp
Source§fn into_proto(&self) -> ProtoTimestamp
fn into_proto(&self) -> ProtoTimestamp
Self into a Proto value.Source§fn from_proto(proto: ProtoTimestamp) -> Result<Self, TryFromProtoError>
fn from_proto(proto: ProtoTimestamp) -> Result<Self, TryFromProtoError>
Source§fn into_proto_owned(self) -> Proto
fn into_proto_owned(self) -> Proto
Self::into_proto that types can
optionally implement, otherwise, the default implementation
delegates to Self::into_proto.Source§impl StepForward for Timestamp
impl StepForward for Timestamp
Source§fn step_forward(&self) -> Self
fn step_forward(&self) -> Self
ts.less_than(ts.step_forward()) is true. Panic if unable to do so.Source§impl TimestampManipulation for Timestamp
impl TimestampManipulation for Timestamp
Source§fn step_forward(&self) -> Self
fn step_forward(&self) -> Self
ts.less_than(ts.step_forward()) is true. Panic if unable to do so.Source§fn step_forward_by(&self, amount: &Self) -> Self
fn step_forward_by(&self, amount: &Self) -> Self
amount. Panic if unable to do so.Source§fn try_step_forward(&self) -> Option<Self>
fn try_step_forward(&self) -> Option<Self>
ts.less_than(ts.step_forward())
is true. Return None if unable to do so.Source§fn try_step_forward_by(&self, amount: &Self) -> Option<Self>
fn try_step_forward_by(&self, amount: &Self) -> Option<Self>
amount. Return None if unable to do so.Source§fn step_back(&self) -> Option<Self>
fn step_back(&self) -> Option<Self>
ts.step_back().unwrap().less_than(ts) is true. Return None if unable,
which must only happen if the timestamp is Timestamp::minimum().Source§fn round_up(&self, schedule: &RefreshSchedule) -> Option<Self>
fn round_up(&self, schedule: &RefreshSchedule) -> Option<Self>
Source§fn round_down_minus_1(&self, schedule: &RefreshSchedule) -> Option<Self>
fn round_down_minus_1(&self, schedule: &RefreshSchedule) -> Option<Self>
timestamp - 1 to the time of the previous refresh according to the given
schedule.
Returns None if there is no previous refresh.impl AnyBitPattern for Timestamp
impl Copy for Timestamp
impl Eq for Timestamp
impl NoUninit for Timestamp
impl StructuralPartialEq for Timestamp
impl TotalOrder for Timestamp
Auto Trait Implementations§
impl Freeze for Timestamp
impl RefUnwindSafe for Timestamp
impl Send for Timestamp
impl Sync for Timestamp
impl Unpin 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
Source§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
Source§type Bits = T
type Bits = T
Self must have the same layout as the specified Bits except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern.Source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
bits
as &Self.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
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
key and return true if they are equal.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
key and return true if they are equal.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::RequestSource§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
Source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto.Source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto.Source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
Source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign, for types that do not implement AddAssign.Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Source§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
Source§fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.