pub struct Input<Upstream, Provider> {
pub upstream: Upstream,
pub provider: Provider,
}Expand description
Aggregated per-proposal input a Stateful application hands its inner
application.
upstream is the input Stateful received as a
commonware_consensus::Application (from whatever wraps it);
provider is the stateful-owned handle from Config::provider. Being
generic over the upstream input, it lets an outer application (for example a
reshare wrapper) stack its own input on top of the stateful-owned provider
without either layer knowing the other.
Fields§
§upstream: UpstreamInput forwarded from the application wrapping Stateful.
provider: ProviderProvider owned by the stateful actor, from its Config::provider.
Auto Trait Implementations§
impl<Upstream, Provider> Freeze for Input<Upstream, Provider>
impl<Upstream, Provider> RefUnwindSafe for Input<Upstream, Provider>where
Upstream: RefUnwindSafe,
Provider: RefUnwindSafe,
impl<Upstream, Provider> Send for Input<Upstream, Provider>
impl<Upstream, Provider> Sync for Input<Upstream, Provider>
impl<Upstream, Provider> Unpin for Input<Upstream, Provider>
impl<Upstream, Provider> UnsafeUnpin for Input<Upstream, Provider>where
Upstream: UnsafeUnpin,
Provider: UnsafeUnpin,
impl<Upstream, Provider> UnwindSafe for Input<Upstream, Provider>where
Upstream: UnwindSafe,
Provider: UnwindSafe,
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> ⓘ
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> ⓘ
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 more