« Back to Index

Rust: flatten vector of Results

View original Gist on GitHub

Tags: #rust

main.rs

use std::result::Result::{Ok, Err};

fn main() {
    let v = vec![Ok("foo"), Ok("bar"), Err("whoops"), Ok("baz")]; // Err should be skipped
    for r in v.into_iter().flatten() {
        println!("{:#?}", r);
    }
}

/*
"foo"
"bar"
"baz"
*/