[][src]Struct casper_node::effect::EffectBuilder

pub struct EffectBuilder<REv: 'static>(_);

A builder for Effects.

Provides methods allowing the creation of effects which need to be scheduled on the reactor's event queue, without giving direct access to this queue.

Implementations

impl<REv> EffectBuilder<REv>[src]

pub fn new(event_queue_handle: EventQueueHandle<REv>) -> Self[src]

Creates a new effect builder.

pub async fn immediately(self)[src]

Run and end effect immediately.

Can be used to trigger events from effects when combined with .event. Do not use this do "do nothing", as it will still cause a task to be spawned.

pub async fn fatal<M: Display + ?Sized, '_, '_>(
    self,
    file: &'_ str,
    line: u32,
    msg: &'_ M
)
[src]

Reports a fatal error.

Usually causes the node to cease operations quickly and exit/crash.

pub async fn broadcast_message<I, P>(self, payload: P) where
    REv: From<NetworkRequest<I, P>>, 
[src]

Broadcasts a network message.

Broadcasts a network message to all peers connected at the time the message is sent.

pub async fn gossip_message<I, P>(
    self,
    payload: P,
    count: usize,
    exclude: HashSet<I>
) -> HashSet<I> where
    REv: From<NetworkRequest<I, P>>,
    I: Send + 'static,
    P: Send
[src]

Gossips a network message.

A low-level "gossip" function, selects count randomly chosen nodes on the network, excluding the indicated ones, and sends each a copy of the message.

Returns the IDs of the chosen nodes.

pub async fn network_peers<I>(self) -> HashMap<I, SocketAddr> where
    REv: From<NetworkInfoRequest<I>>,
    I: Send + 'static, 
[src]

Gets connected network peers.

Trait Implementations

impl<REv> Clone for EffectBuilder<REv>[src]

impl<REv> Copy for EffectBuilder<REv>[src]

impl<REv: Debug + 'static> Debug for EffectBuilder<REv>[src]

Auto Trait Implementations

impl<REv> !RefUnwindSafe for EffectBuilder<REv>

impl<REv> Send for EffectBuilder<REv> where
    REv: Send

impl<REv> Sync for EffectBuilder<REv> where
    REv: Send

impl<REv> Unpin for EffectBuilder<REv>

impl<REv> !UnwindSafe for EffectBuilder<REv>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> FromBits<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> WithSubscriber for T[src]