Skip to content

Instantly share code, notes, and snippets.

@wrobstory
Last active April 26, 2020 21:16
Show Gist options
  • Select an option

  • Save wrobstory/f39237b54ee8d0492a0233efa8e2789f to your computer and use it in GitHub Desktop.

Select an option

Save wrobstory/f39237b54ee8d0492a0233efa8e2789f to your computer and use it in GitHub Desktop.

Revisions

  1. wrobstory revised this gist Apr 26, 2020. 1 changed file with 4 additions and 4 deletions.
    8 changes: 4 additions & 4 deletions traverse.rs
    Original file line number Diff line number Diff line change
    @@ -3,14 +3,14 @@ fn into_result(input: &i32) -> Result<&i32, String> {
    }

    fn main() {
    let numbers: Vec<i32> = vec![1, 2, 3, 4, 5];
    let mapper = numbers.iter().map(|x| into_result(x));
    let vector_of_results = mapper.collect::<Vec<Result<&i32, String>>>();
    let numbers: Vec<i32> = vec![1, 2, 3, 4, 5];
    let mapper = numbers.iter().map(|x| into_result(x));
    let vector_of_results = mapper.collect::<Vec<Result<&i32, String>>>();
    println!("{:?}", vector_of_results);
    // [Ok(1), Ok(2), Ok(3), Ok(4), Ok(5)]

    let mapper = numbers.iter().map(|x| into_result(x));
    let traversed = mapper.collect::<Result<Vec<&i32>, String>>();
    let traversed = mapper.collect::<Result<Vec<&i32>, String>>();
    println!("{:?}", traversed);
    // Ok([1, 2, 3, 4, 5])
    }
  2. wrobstory created this gist Apr 26, 2020.
    16 changes: 16 additions & 0 deletions traverse.rs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,16 @@
    fn into_result(input: &i32) -> Result<&i32, String> {
    Ok(input)
    }

    fn main() {
    let numbers: Vec<i32> = vec![1, 2, 3, 4, 5];
    let mapper = numbers.iter().map(|x| into_result(x));
    let vector_of_results = mapper.collect::<Vec<Result<&i32, String>>>();
    println!("{:?}", vector_of_results);
    // [Ok(1), Ok(2), Ok(3), Ok(4), Ok(5)]

    let mapper = numbers.iter().map(|x| into_result(x));
    let traversed = mapper.collect::<Result<Vec<&i32>, String>>();
    println!("{:?}", traversed);
    // Ok([1, 2, 3, 4, 5])
    }