pub enum ForwardingPolicy {
Disabled,
SilentVoters,
SilentLeader,
}Expand description
Controls whether and how the engine proactively forwards certified blocks when entering the next view.
Forwarding is a best-effort liveness aid: when enabled, the batcher broadcasts only after we locally certify a proposal and enter the next view, avoiding sends for proposals that never pass certification.
Variants§
Disabled
Do nothing when a certified proposal becomes eligible for forwarding.
SilentVoters
Forward the block to all participants that did not vote for the proposal.
To only send to the leader of the newly entered view, see ForwardingPolicy::SilentLeader.
SilentLeader
Forward the block to the leader of the newly entered view if they did not vote for the proposal.
To forward to all participants that did not vote for the proposal, see ForwardingPolicy::SilentVoters.
Implementations§
Source§impl ForwardingPolicy
impl ForwardingPolicy
Sourcepub const fn is_enabled(&self) -> bool
pub const fn is_enabled(&self) -> bool
Returns true if the policy is enabled.
Trait Implementations§
Source§impl Clone for ForwardingPolicy
impl Clone for ForwardingPolicy
Source§fn clone(&self) -> ForwardingPolicy
fn clone(&self) -> ForwardingPolicy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ForwardingPolicy
impl Debug for ForwardingPolicy
impl Copy for ForwardingPolicy
Auto Trait Implementations§
impl Freeze for ForwardingPolicy
impl RefUnwindSafe for ForwardingPolicy
impl Send for ForwardingPolicy
impl Sync for ForwardingPolicy
impl Unpin for ForwardingPolicy
impl UnsafeUnpin for ForwardingPolicy
impl UnwindSafe for ForwardingPolicy
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,
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<B> IntoBlock<B> for B
impl<B> IntoBlock<B> for B
Source§fn into_block(self) -> B
fn into_block(self) -> B
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