Function futures_util::try_future::try_join4[][src]

pub fn try_join4<Fut1, Fut2, Fut3, Fut4>(
    future1: Fut1,
    future2: Fut2,
    future3: Fut3,
    future4: Fut4
) -> TryJoin4<Fut1, Fut2, Fut3, Fut4>

Notable traits for TryJoin4<Fut1, Fut2, Fut3, Fut4>

impl<Fut1, Fut2, Fut3, Fut4> Future for TryJoin4<Fut1, Fut2, Fut3, Fut4> where
    Fut1: TryFuture,
    Fut2: TryFuture<Error = Fut1::Error>,
    Fut3: TryFuture<Error = Fut1::Error>,
    Fut4: TryFuture<Error = Fut1::Error>, 
type Output = Result<(Fut1::Ok, Fut2::Ok, Fut3::Ok, Fut4::Ok), Fut1::Error>;
where
    Fut1: TryFuture,
    Fut2: TryFuture<Error = Fut1::Error>,
    Fut3: TryFuture<Error = Fut1::Error>,
    Fut4: TryFuture<Error = Fut1::Error>, 

Same as try_join, but with more futures.

Examples

use futures::future;

let a = future::ready(Ok::<i32, i32>(1));
let b = future::ready(Ok::<i32, i32>(2));
let c = future::ready(Ok::<i32, i32>(3));
let d = future::ready(Ok::<i32, i32>(4));
let tuple = future::try_join4(a, b, c, d);

assert_eq!(tuple.await, Ok((1, 2, 3, 4)));