Struct libp2p_broadcast::Broadcast
source · [−]pub struct Broadcast { /* private fields */ }
Implementations
sourceimpl Broadcast
impl Broadcast
pub fn new(config: BroadcastConfig) -> Self
pub fn subscribed(&self) -> impl Iterator<Item = &Topic> + '_
pub fn peers(&self, topic: &Topic) -> Option<impl Iterator<Item = &PeerId> + '_>
pub fn topics(&self, peer: &PeerId) -> Option<impl Iterator<Item = &Topic> + '_>
pub fn subscribe(&mut self, topic: Topic)
pub fn unsubscribe(&mut self, topic: &Topic)
pub fn broadcast(&mut self, topic: &Topic, msg: Arc<[u8]>)
Trait Implementations
sourceimpl NetworkBehaviour for Broadcast
impl NetworkBehaviour for Broadcast
type ConnectionHandler = OneShotHandler<BroadcastConfig, Message, HandlerEvent>
type ConnectionHandler = OneShotHandler<BroadcastConfig, Message, HandlerEvent>
Handler for all the protocols the network behaviour supports.
type OutEvent = BroadcastEvent
type OutEvent = BroadcastEvent
Event generated by the NetworkBehaviour
and that the swarm will report back.
sourcefn new_handler(&mut self) -> Self::ConnectionHandler
fn new_handler(&mut self) -> Self::ConnectionHandler
Creates a new [ConnectionHandler
] for a connection with a peer. Read more
sourcefn addresses_of_peer(&mut self, _peer: &PeerId) -> Vec<Multiaddr>
fn addresses_of_peer(&mut self, _peer: &PeerId) -> Vec<Multiaddr>
Addresses that this behaviour is aware of for this specific peer, and that may allow reaching the peer. Read more
sourcefn inject_connection_established(
&mut self,
peer: &PeerId,
_connection_id: &ConnectionId,
_endpoint: &ConnectedPoint,
_failed_addresses: Option<&Vec<Multiaddr>>,
other_established: usize
)
fn inject_connection_established(
&mut self,
peer: &PeerId,
_connection_id: &ConnectionId,
_endpoint: &ConnectedPoint,
_failed_addresses: Option<&Vec<Multiaddr>>,
other_established: usize
)
Informs the behaviour about a newly established connection to a peer.
sourcefn inject_connection_closed(
&mut self,
peer: &PeerId,
_: &ConnectionId,
_: &ConnectedPoint,
_: <Self::ConnectionHandler as IntoConnectionHandler>::Handler,
remaining_established: usize
)
fn inject_connection_closed(
&mut self,
peer: &PeerId,
_: &ConnectionId,
_: &ConnectedPoint,
_: <Self::ConnectionHandler as IntoConnectionHandler>::Handler,
remaining_established: usize
)
Informs the behaviour about a closed connection to a peer. Read more
sourcefn inject_event(&mut self, peer: PeerId, _: ConnectionId, msg: HandlerEvent)
fn inject_event(&mut self, peer: PeerId, _: ConnectionId, msg: HandlerEvent)
Informs the behaviour about an event generated by the handler dedicated to the peer identified by peer_id
.
for the behaviour. Read more
sourcefn poll(
&mut self,
_: &mut Context<'_>,
_: &mut impl PollParameters
) -> Poll<NetworkBehaviourAction<BroadcastEvent, OneShotHandler<BroadcastConfig, Message, HandlerEvent>>>
fn poll(
&mut self,
_: &mut Context<'_>,
_: &mut impl PollParameters
) -> Poll<NetworkBehaviourAction<BroadcastEvent, OneShotHandler<BroadcastConfig, Message, HandlerEvent>>>
Polls for things that swarm should do. Read more
fn inject_address_change(
&mut self,
&PeerId,
&ConnectionId,
_old: &ConnectedPoint,
_new: &ConnectedPoint
)
fn inject_address_change(
&mut self,
&PeerId,
&ConnectionId,
_old: &ConnectedPoint,
_new: &ConnectedPoint
)
Informs the behaviour that the [ConnectedPoint
] of an existing connection has changed.
fn inject_dial_failure(
&mut self,
_peer_id: Option<PeerId>,
_handler: Self::ConnectionHandler,
_error: &DialError
)
fn inject_dial_failure(
&mut self,
_peer_id: Option<PeerId>,
_handler: Self::ConnectionHandler,
_error: &DialError
)
Indicates to the behaviour that the dial to a known or unknown node failed.
fn inject_listen_failure(
&mut self,
_local_addr: &Multiaddr,
_send_back_addr: &Multiaddr,
_handler: Self::ConnectionHandler
)
fn inject_listen_failure(
&mut self,
_local_addr: &Multiaddr,
_send_back_addr: &Multiaddr,
_handler: Self::ConnectionHandler
)
Indicates to the behaviour that an error happened on an incoming connection during its initial handshake. Read more
fn inject_new_listener(&mut self, _id: ListenerId)
fn inject_new_listener(&mut self, _id: ListenerId)
Indicates to the behaviour that a new listener was created.
fn inject_new_listen_addr(&mut self, _id: ListenerId, _addr: &Multiaddr)
fn inject_new_listen_addr(&mut self, _id: ListenerId, _addr: &Multiaddr)
Indicates to the behaviour that we have started listening on a new multiaddr.
fn inject_expired_listen_addr(&mut self, _id: ListenerId, _addr: &Multiaddr)
fn inject_expired_listen_addr(&mut self, _id: ListenerId, _addr: &Multiaddr)
Indicates to the behaviour that a multiaddr we were listening on has expired, which means that we are no longer listening in it. Read more
fn inject_listener_error(
&mut self,
_id: ListenerId,
_err: &(dyn Error + 'static)
)
fn inject_listener_error(
&mut self,
_id: ListenerId,
_err: &(dyn Error + 'static)
)
A listener experienced an error.
fn inject_listener_closed(
&mut self,
_id: ListenerId,
_reason: Result<(), &Error>
)
fn inject_listener_closed(
&mut self,
_id: ListenerId,
_reason: Result<(), &Error>
)
A listener closed.
fn inject_new_external_addr(&mut self, _addr: &Multiaddr)
fn inject_new_external_addr(&mut self, _addr: &Multiaddr)
Indicates to the behaviour that we have discovered a new external address for us.
fn inject_expired_external_addr(&mut self, _addr: &Multiaddr)
fn inject_expired_external_addr(&mut self, _addr: &Multiaddr)
Indicates to the behaviour that an external address was removed.
Auto Trait Implementations
impl !RefUnwindSafe for Broadcast
impl Send for Broadcast
impl Sync for Broadcast
impl Unpin for Broadcast
impl !UnwindSafe for Broadcast
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more