Struct par_stream::builder::ComposeFutureFactory
source · [−]pub struct ComposeFutureFactory<In, F, G> where
F: FutureFactory<In>,
G: FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future, { /* private fields */ }
Implementations
sourceimpl<In, F, G> ComposeFutureFactory<In, F, G> where
F: FutureFactory<In>,
G: FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
impl<In, F, G> ComposeFutureFactory<In, F, G> where
F: FutureFactory<In>,
G: FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
Trait Implementations
sourceimpl<In, F, G> Clone for ComposeFutureFactory<In, F, G> where
F: Clone + FutureFactory<In>,
G: Send + Clone + FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
impl<In, F, G> Clone for ComposeFutureFactory<In, F, G> where
F: Clone + FutureFactory<In>,
G: Send + Clone + FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
sourceimpl<In, F, G> FutureFactory<In> for ComposeFutureFactory<In, F, G> where
F: FutureFactory<In>,
G: 'static + Send + Clone + FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
impl<In, F, G> FutureFactory<In> for ComposeFutureFactory<In, F, G> where
F: FutureFactory<In>,
G: 'static + Send + Clone + FutureFactory<<F::Fut as Future>::Output>,
In: 'static + Send,
<F::Fut as Future>::Output: 'static + Send,
<G::Fut as Future>::Output: 'static + Send,
F::Fut: 'static + Send + Future,
G::Fut: 'static + Send + Future,
type Fut = FutFacChain<F::Fut, G>
fn generate(&mut self, input: In) -> FutFacChain<F::Fut, G>ⓘNotable traits for FutFacChain<Fut, Fac>impl<Fut, Fac> Future for FutFacChain<Fut, Fac> where
Fut::Output: 'static + Send,
<Fac::Fut as Future>::Output: 'static + Send,
Fut: Future,
Fac::Fut: 'static + Send + Future,
Fac: FutureFactory<Fut::Output>, type Output = <Fac::Fut as Future>::Output;
Fut::Output: 'static + Send,
<Fac::Fut as Future>::Output: 'static + Send,
Fut: Future,
Fac::Fut: 'static + Send + Future,
Fac: FutureFactory<Fut::Output>, type Output = <Fac::Fut as Future>::Output;
fn boxed<'a>(self) -> BoxFutureFactory<'a, In, <Self::Fut as Future>::Output> where
Self: 'a + Sized + Send,
fn compose<G>(self, other: G) -> ComposeFutureFactory<In, Self, G> where
Self: Sized,
G: 'static + Send + Clone + FutureFactory<<Self::Fut as Future>::Output>,
<G::Fut as Future>::Output: Send,
Auto Trait Implementations
impl<In, F, G> RefUnwindSafe for ComposeFutureFactory<In, F, G> where
F: RefUnwindSafe,
G: RefUnwindSafe,
In: RefUnwindSafe,
impl<In, F, G> Send for ComposeFutureFactory<In, F, G> where
F: Send,
G: Send,
impl<In, F, G> Sync for ComposeFutureFactory<In, F, G> where
F: Sync,
G: Sync,
In: Sync,
impl<In, F, G> Unpin for ComposeFutureFactory<In, F, G> where
F: Unpin,
G: Unpin,
In: Unpin,
impl<In, F, G> UnwindSafe for ComposeFutureFactory<In, F, G> where
F: UnwindSafe,
G: UnwindSafe,
In: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more