• @nutomicMA
    link
    32 years ago

    I think she is talking about this functionality which already exists. It is not very intuitive though.

    let res = my_collection
    .iter()
    .map(|x| method_that_returns_result(x))
    .collect::<Result<Vec<T>, Error>>()?;
    

    So it turns a Vec<Result, Error> into Result<Vec<T>, Error>, and you can turn it into Vec<T> simply with ?. Otherwise you would probably need a for loop.

    • Mad
      link
      fedilink
      12 years ago

      do you mean Vec<Result<T, Error>>? why would an error type be the second type argument for a Vec?