pub struct View(/* private fields */);Expand description
A monotonically increasing counter within a single epoch.
Views represent individual consensus rounds within an epoch. Each view corresponds to one attempt to reach consensus on a proposal.
Implementations§
Source§impl View
impl View
Sourcepub const fn next(self) -> Self
pub const fn next(self) -> Self
Returns the next view.
§Panics
Panics if the view would overflow u64::MAX. In practice, this is extremely unlikely to occur during normal operation.
Sourcepub fn previous(self) -> Option<Self>
pub fn previous(self) -> Option<Self>
Returns the previous view, or None if this is view zero.
Unlike View::next(), this returns an Option since reaching view zero
is common, whereas overflowing u64::MAX is not expected in normal
operation.
Sourcepub const fn saturating_add(self, delta: ViewDelta) -> Self
pub const fn saturating_add(self, delta: ViewDelta) -> Self
Adds a view delta, saturating at u64::MAX.
Sourcepub const fn saturating_sub(self, delta: ViewDelta) -> Self
pub const fn saturating_sub(self, delta: ViewDelta) -> Self
Subtracts a view delta, saturating at zero.
Trait Implementations§
Source§impl EncodeSize for View
impl EncodeSize for View
Source§fn encode_size(&self) -> usize
fn encode_size(&self) -> usize
Returns the encoded size of this value (in bytes).
Source§impl Ord for View
impl Ord for View
Source§impl PartialOrd for View
impl PartialOrd for View
Source§impl Read for View
impl Read for View
impl Copy for View
impl Eq for View
impl StructuralPartialEq for View
Auto Trait Implementations§
impl Freeze for View
impl RefUnwindSafe for View
impl Send for View
impl Sync for View
impl Unpin for View
impl UnwindSafe for View
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)Source§impl<T> Encode for Twhere
T: Write + EncodeSize,
impl<T> Encode for Twhere
T: Write + EncodeSize,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
Converts
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>
Converts
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> 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<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.