pub struct ProtocolController { /* private fields */ }Expand description
Worker side of ProtocolHandle responsible for all the logic.
Implementations§
source§impl ProtocolController
 
impl ProtocolController
sourcepub fn new(
    set_id: SetId,
    config: ProtoSetConfig,
    to_notifications: TracingUnboundedSender<Message>,
    peer_store: Box<dyn PeerStoreProvider>
) -> (ProtocolHandle, ProtocolController)
 
pub fn new( set_id: SetId, config: ProtoSetConfig, to_notifications: TracingUnboundedSender<Message>, peer_store: Box<dyn PeerStoreProvider> ) -> (ProtocolHandle, ProtocolController)
Construct new ProtocolController.
sourcepub async fn run(self)
 
pub async fn run(self)
Drive ProtocolController. This function returns when all instances of
ProtocolHandle are dropped.
sourcepub async fn next_action(&mut self) -> bool
 
pub async fn next_action(&mut self) -> bool
Perform one action. Returns true if it should be called again.
Intended for tests only. Use run for driving ProtocolController.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for ProtocolController
impl Send for ProtocolController
impl !Sync for ProtocolController
impl Unpin for ProtocolController
impl !UnwindSafe for ProtocolController
Blanket Implementations§
source§impl<T> CheckedConversion for T
 
impl<T> CheckedConversion for T
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, Outer> IsWrappedBy<Outer> for Twhere
    Outer: AsRef<T> + AsMut<T> + From<T>,
    T: From<Outer>,
 
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> Pointable for T
 
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
 
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
    Self: UniqueSaturatedFrom<T>,
 
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
    Self: UniqueSaturatedInto<T>,
 
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of 
T. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
    T: UncheckedFrom<S>,
 
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
 
fn unchecked_into(self) -> T
The counterpart to 
unchecked_from.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
    T: Bounded,
    S: TryInto<T>,
 
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
 
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of 
T.