pub struct WallClock(pub f64);Expand description
A parsed wall-clock moment, as epoch seconds (fractional).
Tuple Fields§
§0: f64Implementations§
Source§impl WallClock
impl WallClock
Sourcepub fn parse(raw: &str) -> Result<WallClock, WallClockError>
pub fn parse(raw: &str) -> Result<WallClock, WallClockError>
Parse an accepted wall-clock form. raw is the UNQUOTED literal text.
Sourcepub fn epoch_secs(&self) -> f64
pub fn epoch_secs(&self) -> f64
The epoch-seconds moment.
Sourcepub fn as_marker(&self) -> u64
pub fn as_marker(&self) -> u64
The AS OF marker for a wall-clock moment: WALL_CLOCK_FLAG | epoch_ms.
The clause’s marker slot is a u64 the executor reads as a sequence.
A wall-clock moment rides in the same slot but TAGGED with the high
bit, which no real sequence ever sets (a store would need 2^63 writes
to reach it — itcd’s production chainstate sits at ~10^6). The layer
between parser and executor — the place holding both the marker and
the Db — checks the flag: set, resolve through Db::seq_at to a
real seq; clear, pass through untouched. Bare integers keep their
meaning bit-for-bit; that is the backcompat contract.
Sourcepub fn from_marker(marker: u64) -> Option<WallClock>
pub fn from_marker(marker: u64) -> Option<WallClock>
Decode a marker produced by [as_marker], if it is one.
Trait Implementations§
impl Copy for WallClock
impl StructuralPartialEq for WallClock
Auto Trait Implementations§
impl Freeze for WallClock
impl RefUnwindSafe for WallClock
impl Send for WallClock
impl Sync for WallClock
impl Unpin for WallClock
impl UnsafeUnpin for WallClock
impl UnwindSafe for WallClock
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 more