Function futures::prelude::future::try_join3[][src]

pub fn try_join3<Fut1, Fut2, Fut3>(
    future1: Fut1,
    future2: Fut2,
    future3: Fut3
) -> TryJoin3<Fut1, Fut2, Fut3>

Notable traits for TryJoin3<Fut1, Fut2, Fut3>

impl<Fut1, Fut2, Fut3> Future for TryJoin3<Fut1, Fut2, Fut3> where
    Fut1: TryFuture,
    Fut2: TryFuture<Error = <Fut1 as TryFuture>::Error>,
    Fut3: TryFuture<Error = <Fut1 as TryFuture>::Error>, 
type Output = Result<(<Fut1 as TryFuture>::Ok, <Fut2 as TryFuture>::Ok, <Fut3 as TryFuture>::Ok), <Fut1 as TryFuture>::Error>;
where
    Fut1: TryFuture,
    Fut2: TryFuture<Error = <Fut1 as TryFuture>::Error>,
    Fut3: TryFuture<Error = <Fut1 as TryFuture>::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 tuple = future::try_join3(a, b, c);

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