pub struct Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A = Exact>where
E: Spawner + CryptoRng + Metrics + BufferPooler + Clock + Storage,
B: ReshareBlock<Variant = V, Signer = C>,
V: BlsVariant,
C: Signer,
M: Manager<PublicKey = C::PublicKey, Directory = B::Directory>,
X: Blocker<PublicKey = C::PublicKey>,
P: ParticipantsProvider<PublicKey = C::PublicKey, Directory = B::Directory>,
SS: SecretStore,
T: Strategy,
BV: BatchVerifier<PublicKey = C::PublicKey> + Send + 'static,
S: Scheme + SimplexScheme<MV::Commitment, PublicKey = C::PublicKey>,
MV: MarshalVariant<ApplicationBlock = B>,
R: Registrar<Variant = V, PublicKey = C::PublicKey>,
A: Acknowledgement,{ /* private fields */ }Implementations§
Source§impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
E: Spawner + CryptoRng + Metrics + BufferPooler + Clock + Storage,
B: ReshareBlock<Variant = V, Signer = C>,
V: BlsVariant,
C: Signer,
M: Manager<PublicKey = C::PublicKey, Directory = B::Directory>,
X: Blocker<PublicKey = C::PublicKey>,
P: ParticipantsProvider<PublicKey = C::PublicKey, Directory = B::Directory>,
SS: SecretStore,
T: Strategy,
BV: BatchVerifier<PublicKey = C::PublicKey> + Send + 'static,
S: Scheme + SimplexScheme<MV::Commitment, PublicKey = C::PublicKey>,
MV: MarshalVariant<ApplicationBlock = B>,
R: Registrar<Variant = V, PublicKey = C::PublicKey>,
A: Acknowledgement,
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
E: Spawner + CryptoRng + Metrics + BufferPooler + Clock + Storage,
B: ReshareBlock<Variant = V, Signer = C>,
V: BlsVariant,
C: Signer,
M: Manager<PublicKey = C::PublicKey, Directory = B::Directory>,
X: Blocker<PublicKey = C::PublicKey>,
P: ParticipantsProvider<PublicKey = C::PublicKey, Directory = B::Directory>,
SS: SecretStore,
T: Strategy,
BV: BatchVerifier<PublicKey = C::PublicKey> + Send + 'static,
S: Scheme + SimplexScheme<MV::Commitment, PublicKey = C::PublicKey>,
MV: MarshalVariant<ApplicationBlock = B>,
R: Registrar<Variant = V, PublicKey = C::PublicKey>,
A: Acknowledgement,
Auto Trait Implementations§
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A = Exact> !RefUnwindSafe for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A = Exact> !Sync for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A = Exact> !UnwindSafe for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> Freeze for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
Cell<E>: Freeze,
Receiver<Message<B, V, C, A>>: Freeze,
C: Freeze,
M: Freeze,
X: Freeze,
P: Freeze,
Option<SS>: Freeze,
T: Freeze,
R: Freeze,
Mailbox<S, MV>: Freeze,
Plan<S, <MV as Variant>::Commitment, V, <B as ReshareBlock>::Directory>: Freeze,
Metrics<<C as Signer>::PublicKey>: Freeze,
Mode<V, <C as Signer>::PublicKey, <B as ReshareBlock>::Directory>: Freeze,
PhantomData<BV>: Freeze,
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> Send for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
Cell<E>: Send,
Receiver<Message<B, V, C, A>>: Send,
Option<SS>: Send,
Mailbox<S, MV>: Send,
Plan<S, <MV as Variant>::Commitment, V, <B as ReshareBlock>::Directory>: Send,
Metrics<<C as Signer>::PublicKey>: Send,
Mode<V, <C as Signer>::PublicKey, <B as ReshareBlock>::Directory>: Send,
PhantomData<BV>: Send,
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> Unpin for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
Cell<E>: Unpin,
Receiver<Message<B, V, C, A>>: Unpin,
C: Unpin,
M: Unpin,
X: Unpin,
P: Unpin,
Option<SS>: Unpin,
T: Unpin,
R: Unpin,
Mailbox<S, MV>: Unpin,
Plan<S, <MV as Variant>::Commitment, V, <B as ReshareBlock>::Directory>: Unpin,
Metrics<<C as Signer>::PublicKey>: Unpin,
Mode<V, <C as Signer>::PublicKey, <B as ReshareBlock>::Directory>: Unpin,
PhantomData<BV>: Unpin,
impl<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A> UnsafeUnpin for Actor<E, B, V, C, M, X, P, SS, T, BV, S, MV, R, A>where
Cell<E>: UnsafeUnpin,
Receiver<Message<B, V, C, A>>: UnsafeUnpin,
C: UnsafeUnpin,
M: UnsafeUnpin,
X: UnsafeUnpin,
P: UnsafeUnpin,
Option<SS>: UnsafeUnpin,
T: UnsafeUnpin,
R: UnsafeUnpin,
Mailbox<S, MV>: UnsafeUnpin,
Plan<S, <MV as Variant>::Commitment, V, <B as ReshareBlock>::Directory>: UnsafeUnpin,
Metrics<<C as Signer>::PublicKey>: UnsafeUnpin,
Mode<V, <C as Signer>::PublicKey, <B as ReshareBlock>::Directory>: UnsafeUnpin,
PhantomData<BV>: UnsafeUnpin,
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