Struct libp2p_core::transport::and_then::AndThen [−][src]
pub struct AndThen<T, C> { /* fields omitted */ }
See the Transport::and_then
method.
Trait Implementations
impl<T, C, F, O> Transport for AndThen<T, C> where
T: Transport,
C: FnOnce(T::Output, ConnectedPoint) -> F + Clone,
F: TryFuture<Ok = O>,
F::Error: Error,
[src]
impl<T, C, F, O> Transport for AndThen<T, C> where
T: Transport,
C: FnOnce(T::Output, ConnectedPoint) -> F + Clone,
F: TryFuture<Ok = O>,
F::Error: Error,
[src]type Output = O
The result of a connection setup process, including protocol upgrades. Read more
type Error = EitherError<T::Error, F::Error>
An error that occurred during connection setup.
type Listener = AndThenStream<T::Listener, C>
type ListenerUpgrade = AndThenFuture<T::ListenerUpgrade, C, F>
type Dial = AndThenFuture<T::Dial, C, F>
fn listen_on(
self,
addr: Multiaddr
) -> Result<Self::Listener, TransportError<Self::Error>>
[src]
self,
addr: Multiaddr
) -> Result<Self::Listener, TransportError<Self::Error>>
fn dial(
self,
addr: Multiaddr
) -> Result<Self::Dial, TransportError<Self::Error>>
[src]
self,
addr: Multiaddr
) -> Result<Self::Dial, TransportError<Self::Error>>
fn address_translation(
&self,
server: &Multiaddr,
observed: &Multiaddr
) -> Option<Multiaddr>
[src]
&self,
server: &Multiaddr,
observed: &Multiaddr
) -> Option<Multiaddr>
fn boxed(self) -> Boxed<Self::Output> where
Self: Transport + Sized + Clone + Send + Sync + 'static,
Self::Dial: Send + 'static,
Self::Listener: Send + 'static,
Self::ListenerUpgrade: Send + 'static,
Self::Error: Send + Sync,
[src]
Self: Transport + Sized + Clone + Send + Sync + 'static,
Self::Dial: Send + 'static,
Self::Listener: Send + 'static,
Self::ListenerUpgrade: Send + 'static,
Self::Error: Send + Sync,
fn map<F, O>(self, f: F) -> Map<Self, F> where
Self: Sized,
F: FnOnce(Self::Output, ConnectedPoint) -> O + Clone,
[src]
Self: Sized,
F: FnOnce(Self::Output, ConnectedPoint) -> O + Clone,
fn map_err<F, E>(self, f: F) -> MapErr<Self, F> where
Self: Sized,
F: FnOnce(Self::Error) -> E + Clone,
[src]
Self: Sized,
F: FnOnce(Self::Error) -> E + Clone,
fn or_transport<U>(self, other: U) -> OrTransport<Self, U> where
Self: Sized,
U: Transport,
<U as Transport>::Error: 'static,
[src]
Self: Sized,
U: Transport,
<U as Transport>::Error: 'static,
fn and_then<C, F, O>(self, f: C) -> AndThen<Self, C> where
Self: Sized,
C: FnOnce(Self::Output, ConnectedPoint) -> F + Clone,
F: TryFuture<Ok = O>,
<F as TryFuture>::Error: Error + 'static,
[src]
Self: Sized,
C: FnOnce(Self::Output, ConnectedPoint) -> F + Clone,
F: TryFuture<Ok = O>,
<F as TryFuture>::Error: Error + 'static,
fn upgrade(self, version: Version) -> Builder<Self> where
Self: Sized,
Self::Error: 'static,
[src]
Self: Sized,
Self::Error: 'static,
Auto Trait Implementations
impl<T, C> RefUnwindSafe for AndThen<T, C> where
C: RefUnwindSafe,
T: RefUnwindSafe,
C: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, C> Send for AndThen<T, C> where
C: Send,
T: Send,
C: Send,
T: Send,
impl<T, C> Sync for AndThen<T, C> where
C: Sync,
T: Sync,
C: Sync,
T: Sync,
impl<T, C> Unpin for AndThen<T, C> where
C: Unpin,
T: Unpin,
C: Unpin,
T: Unpin,
impl<T, C> UnwindSafe for AndThen<T, C> where
C: UnwindSafe,
T: UnwindSafe,
C: UnwindSafe,
T: UnwindSafe,