[−][src]Struct libp2p::Swarm
Contains the state of the network, plus the way it should behave.
Methods
pub fn new(
transport: TTransport,
behaviour: TBehaviour,
topology: TTopology
) -> Swarm<TTransport, TBehaviour, TTopology>
[src]
pub fn new(
transport: TTransport,
behaviour: TBehaviour,
topology: TTopology
) -> Swarm<TTransport, TBehaviour, TTopology>
Builds a new Swarm
.
pub fn transport(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &TTransport
[src]
pub fn transport(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &TTransport
Returns the transport passed when building this object.
pub fn listen_on(
me: &mut Swarm<TTransport, TBehaviour, TTopology>,
addr: Multiaddr
) -> Result<Multiaddr, Multiaddr>
[src]
pub fn listen_on(
me: &mut Swarm<TTransport, TBehaviour, TTopology>,
addr: Multiaddr
) -> Result<Multiaddr, Multiaddr>
Starts listening on the given address.
Returns an error if the address is not supported. On success, returns an alternative version of the address.
pub fn dial_addr(
me: &mut Swarm<TTransport, TBehaviour, TTopology>,
addr: Multiaddr
) -> Result<(), Multiaddr>
[src]
pub fn dial_addr(
me: &mut Swarm<TTransport, TBehaviour, TTopology>,
addr: Multiaddr
) -> Result<(), Multiaddr>
Tries to dial the given address.
Returns an error if the address is not supported.
pub fn dial(me: &mut Swarm<TTransport, TBehaviour, TTopology>, peer_id: PeerId)
[src]
pub fn dial(me: &mut Swarm<TTransport, TBehaviour, TTopology>, peer_id: PeerId)
Tries to reach the given peer using the elements in the topology.
Has no effect if we are already connected to that peer, or if no address is known for the peer.
pub fn listeners(
me: &Swarm<TTransport, TBehaviour, TTopology>
) -> impl Iterator<Item = &Multiaddr>
[src]
pub fn listeners(
me: &Swarm<TTransport, TBehaviour, TTopology>
) -> impl Iterator<Item = &Multiaddr>
Returns an iterator that produces the list of addresses we're listening on.
pub fn local_peer_id(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &PeerId
[src]
pub fn local_peer_id(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &PeerId
Returns the peer ID of the swarm passed as parameter.
pub fn topology(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &TTopology
[src]
pub fn topology(me: &Swarm<TTransport, TBehaviour, TTopology>) -> &TTopology
Returns the topology of the swarm.
pub fn topology_mut(
me: &mut Swarm<TTransport, TBehaviour, TTopology>
) -> &mut TTopology
[src]
pub fn topology_mut(
me: &mut Swarm<TTransport, TBehaviour, TTopology>
) -> &mut TTopology
Returns the topology of the swarm.
Trait Implementations
impl<TTransport, TBehaviour, TTopology> DerefMut for Swarm<TTransport, TBehaviour, TTopology> where
TBehaviour: NetworkBehaviour<TTopology>,
TTransport: Transport,
[src]
impl<TTransport, TBehaviour, TTopology> DerefMut for Swarm<TTransport, TBehaviour, TTopology> where
TBehaviour: NetworkBehaviour<TTopology>,
TTransport: Transport,
type Item = <TBehaviour as NetworkBehaviour<TTopology>>::OutEvent
The type of item this stream will yield on success.
type Error = Error
The type of error this stream may generate.
fn poll(
&mut self
) -> Result<Async<Option<<TBehaviour as NetworkBehaviour<TTopology>>::OutEvent>>, Error>
[src]
fn poll(
&mut self
) -> Result<Async<Option<<TBehaviour as NetworkBehaviour<TTopology>>::OutEvent>>, Error>
fn wait(self) -> Wait<Self>
[src]
fn wait(self) -> Wait<Self>
Creates an iterator which blocks the current thread until each item of this stream is resolved. Read more
fn into_future(self) -> StreamFuture<Self>
[src]
fn into_future(self) -> StreamFuture<Self>
Converts this stream into a Future
. Read more
fn map<U, F>(self, f: F) -> Map<Self, F> where
F: FnMut(Self::Item) -> U,
[src]
fn map<U, F>(self, f: F) -> Map<Self, F> where
F: FnMut(Self::Item) -> U,
Converts a stream of type T
to a stream of type U
. Read more
fn map_err<U, F>(self, f: F) -> MapErr<Self, F> where
F: FnMut(Self::Error) -> U,
[src]
fn map_err<U, F>(self, f: F) -> MapErr<Self, F> where
F: FnMut(Self::Error) -> U,
Converts a stream of error type T
to a stream of error type U
. Read more
fn filter<F>(self, f: F) -> Filter<Self, F> where
F: FnMut(&Self::Item) -> bool,
[src]
fn filter<F>(self, f: F) -> Filter<Self, F> where
F: FnMut(&Self::Item) -> bool,
Filters the values produced by this stream according to the provided predicate. Read more
fn filter_map<F, B>(self, f: F) -> FilterMap<Self, F> where
F: FnMut(Self::Item) -> Option<B>,
[src]
fn filter_map<F, B>(self, f: F) -> FilterMap<Self, F> where
F: FnMut(Self::Item) -> Option<B>,
Filters the values produced by this stream while simultaneously mapping them to a different type. Read more
fn then<F, U>(self, f: F) -> Then<Self, F, U> where
F: FnMut(Result<Self::Item, Self::Error>) -> U,
U: IntoFuture,
[src]
fn then<F, U>(self, f: F) -> Then<Self, F, U> where
F: FnMut(Result<Self::Item, Self::Error>) -> U,
U: IntoFuture,
Chain on a computation for when a value is ready, passing the resulting item to the provided closure f
. Read more
fn and_then<F, U>(self, f: F) -> AndThen<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Error = Self::Error>,
[src]
fn and_then<F, U>(self, f: F) -> AndThen<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Error = Self::Error>,
Chain on a computation for when a value is ready, passing the successful results to the provided closure f
. Read more
fn or_else<F, U>(self, f: F) -> OrElse<Self, F, U> where
F: FnMut(Self::Error) -> U,
U: IntoFuture<Item = Self::Item>,
[src]
fn or_else<F, U>(self, f: F) -> OrElse<Self, F, U> where
F: FnMut(Self::Error) -> U,
U: IntoFuture<Item = Self::Item>,
Chain on a computation for when an error happens, passing the erroneous result to the provided closure f
. Read more
fn collect(self) -> Collect<Self>
[src]
fn collect(self) -> Collect<Self>
Collect all of the values of this stream into a vector, returning a future representing the result of that computation. Read more
fn concat2(self) -> Concat2<Self> where
Self::Item: Extend<<Self::Item as IntoIterator>::Item>,
Self::Item: IntoIterator,
Self::Item: Default,
[src]
fn concat2(self) -> Concat2<Self> where
Self::Item: Extend<<Self::Item as IntoIterator>::Item>,
Self::Item: IntoIterator,
Self::Item: Default,
Concatenate all results of a stream into a single extendable destination, returning a future representing the end result. Read more
fn concat(self) -> Concat<Self> where
Self::Item: Extend<<Self::Item as IntoIterator>::Item>,
Self::Item: IntoIterator,
[src]
fn concat(self) -> Concat<Self> where
Self::Item: Extend<<Self::Item as IntoIterator>::Item>,
Self::Item: IntoIterator,
: please use Stream::concat2
instead
Concatenate all results of a stream into a single extendable destination, returning a future representing the end result. Read more
fn fold<F, T, Fut>(self, init: T, f: F) -> Fold<Self, F, Fut, T> where
F: FnMut(T, Self::Item) -> Fut,
Fut: IntoFuture<Item = T>,
Self::Error: From<<Fut as IntoFuture>::Error>,
[src]
fn fold<F, T, Fut>(self, init: T, f: F) -> Fold<Self, F, Fut, T> where
F: FnMut(T, Self::Item) -> Fut,
Fut: IntoFuture<Item = T>,
Self::Error: From<<Fut as IntoFuture>::Error>,
Execute an accumulating computation over a stream, collecting all the values into one final result. Read more
fn flatten(self) -> Flatten<Self> where
Self::Item: Stream,
<Self::Item as Stream>::Error: From<Self::Error>,
[src]
fn flatten(self) -> Flatten<Self> where
Self::Item: Stream,
<Self::Item as Stream>::Error: From<Self::Error>,
Flattens a stream of streams into just one continuous stream. Read more
fn skip_while<P, R>(self, pred: P) -> SkipWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
[src]
fn skip_while<P, R>(self, pred: P) -> SkipWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Skip elements on this stream while the predicate provided resolves to true
. Read more
fn take_while<P, R>(self, pred: P) -> TakeWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
[src]
fn take_while<P, R>(self, pred: P) -> TakeWhile<Self, P, R> where
P: FnMut(&Self::Item) -> R,
R: IntoFuture<Item = bool, Error = Self::Error>,
Take elements from this stream while the predicate provided resolves to true
. Read more
fn for_each<F, U>(self, f: F) -> ForEach<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Item = (), Error = Self::Error>,
[src]
fn for_each<F, U>(self, f: F) -> ForEach<Self, F, U> where
F: FnMut(Self::Item) -> U,
U: IntoFuture<Item = (), Error = Self::Error>,
Runs this stream to completion, executing the provided closure for each element on the stream. Read more
fn from_err<E>(self) -> FromErr<Self, E> where
E: From<Self::Error>,
[src]
fn from_err<E>(self) -> FromErr<Self, E> where
E: From<Self::Error>,
Map this stream's error to any error implementing From
for this stream's Error
, returning a new stream. Read more
fn take(self, amt: u64) -> Take<Self>
[src]
fn take(self, amt: u64) -> Take<Self>
Creates a new stream of at most amt
items of the underlying stream. Read more
fn skip(self, amt: u64) -> Skip<Self>
[src]
fn skip(self, amt: u64) -> Skip<Self>
Creates a new stream which skips amt
items of the underlying stream. Read more
fn fuse(self) -> Fuse<Self>
[src]
fn fuse(self) -> Fuse<Self>
Fuse a stream such that poll
will never again be called once it has finished. Read more
fn by_ref(&mut self) -> &mut Self
[src]
fn by_ref(&mut self) -> &mut Self
Borrows a stream, rather than consuming it. Read more
fn catch_unwind(self) -> CatchUnwind<Self> where
Self: UnwindSafe,
[src]
fn catch_unwind(self) -> CatchUnwind<Self> where
Self: UnwindSafe,
Catches unwinding panics while polling the stream. Read more
fn buffered(self, amt: usize) -> Buffered<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
[src]
fn buffered(self, amt: usize) -> Buffered<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
An adaptor for creating a buffered list of pending futures. Read more
fn buffer_unordered(self, amt: usize) -> BufferUnordered<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
[src]
fn buffer_unordered(self, amt: usize) -> BufferUnordered<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
An adaptor for creating a buffered list of pending futures (unordered). Read more
fn merge<S>(self, other: S) -> Merge<Self, S> where
S: Stream<Error = Self::Error>,
[src]
fn merge<S>(self, other: S) -> Merge<Self, S> where
S: Stream<Error = Self::Error>,
: functionality provided by select
now
An adapter for merging the output of two streams. Read more
fn zip<S>(self, other: S) -> Zip<Self, S> where
S: Stream<Error = Self::Error>,
[src]
fn zip<S>(self, other: S) -> Zip<Self, S> where
S: Stream<Error = Self::Error>,
An adapter for zipping two streams together. Read more
fn chain<S>(self, other: S) -> Chain<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
[src]
fn chain<S>(self, other: S) -> Chain<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
Adapter for chaining two stream. Read more
fn peekable(self) -> Peekable<Self>
[src]
fn peekable(self) -> Peekable<Self>
Creates a new stream which exposes a peek
method. Read more
fn chunks(self, capacity: usize) -> Chunks<Self>
[src]
fn chunks(self, capacity: usize) -> Chunks<Self>
An adaptor for chunking up items of the stream inside a vector. Read more
fn select<S>(self, other: S) -> Select<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
[src]
fn select<S>(self, other: S) -> Select<Self, S> where
S: Stream<Item = Self::Item, Error = Self::Error>,
Creates a stream that selects the next element from either this stream or the provided one, whichever is ready first. Read more
fn forward<S>(self, sink: S) -> Forward<Self, S> where
S: Sink<SinkItem = Self::Item>,
Self::Error: From<<S as Sink>::SinkError>,
[src]
fn forward<S>(self, sink: S) -> Forward<Self, S> where
S: Sink<SinkItem = Self::Item>,
Self::Error: From<<S as Sink>::SinkError>,
A future that completes after the given stream has been fully processed into the sink, including flushing. Read more
fn split(self) -> (SplitSink<Self>, SplitStream<Self>) where
Self: Sink,
[src]
fn split(self) -> (SplitSink<Self>, SplitStream<Self>) where
Self: Sink,
Splits this Stream + Sink
object into separate Stream
and Sink
objects. Read more
fn inspect<F>(self, f: F) -> Inspect<Self, F> where
F: FnMut(&Self::Item),
[src]
fn inspect<F>(self, f: F) -> Inspect<Self, F> where
F: FnMut(&Self::Item),
Do something with each item of this stream, afterwards passing it on. Read more
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> where
F: FnMut(&Self::Error),
[src]
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> where
F: FnMut(&Self::Error),
Do something with the error of this stream, afterwards passing it on. Read more
impl<TTransport, TBehaviour, TTopology> Deref for Swarm<TTransport, TBehaviour, TTopology> where
TBehaviour: NetworkBehaviour<TTopology>,
TTransport: Transport,
[src]
impl<TTransport, TBehaviour, TTopology> Deref for Swarm<TTransport, TBehaviour, TTopology> where
TBehaviour: NetworkBehaviour<TTopology>,
TTransport: Transport,
Auto Trait Implementations
impl<TTransport, TBehaviour, TTopology> !Sync for Swarm<TTransport, TBehaviour, TTopology>
impl<TTransport, TBehaviour, TTopology> !Sync for Swarm<TTransport, TBehaviour, TTopology>
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
impl<T> Same for T
impl<T> Same for T
type Output = T
Should always be Self
impl<T> Erased for T
impl<T> Erased for T
impl<T> StreamExt for T where
T: Stream + ?Sized,
[src]
impl<T> StreamExt for T where
T: Stream + ?Sized,
fn throttle(self, duration: Duration) -> Throttle<Self>
[src]
fn throttle(self, duration: Duration) -> Throttle<Self>
Throttle down the stream by enforcing a fixed delay between items. Read more
fn timeout(self, timeout: Duration) -> Timeout<Self>
[src]
fn timeout(self, timeout: Duration) -> Timeout<Self>
Creates a new stream which allows self
until timeout
. Read more
impl<T> Erased for T
impl<T> Erased for T
impl<T> ListenExt for T where
T: Stream,
impl<T> ListenExt for T where
T: Stream,
fn sleep_on_error(self, delay: Duration) -> SleepOnError<Self>
fn sleep_on_error(self, delay: Duration) -> SleepOnError<Self>
Turns a listening stream that you can get from TcpListener::incoming
into a stream that supresses errors and sleeps on resource shortage, effectively allowing listening stream to resume on error. Read more
fn listen(self, max_connections: usize) -> Listen<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Item == (),
<Self::Item as IntoFuture>::Error == (),
fn listen(self, max_connections: usize) -> Listen<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Item == (),
<Self::Item as IntoFuture>::Error == (),
Turns a stream of protocol handlers usually produced by mapping a stream of accepted cnnec Read more
impl<T> Typeable for T where
T: Any,
impl<T> Typeable for T where
T: Any,