// Work with Option<Vec<A>> as an applicative functor (for fixed length Vec)
Work with Option> as an applicative functor (for fixed length Vec)
Work with Option > as an applicative functor ( for fixed length Vec )
fn map1<A, R, F>(a: &Option<Vec<A>>, mut f: F) -> Option<Vec<R>>
        where F: FnMut(&A) -> R,
        {
            let a = a.as_ref()?;
            Some(a.iter().map(|a| f(a)).collect())
        }
fn map1 < A , R , F > ( a : & Option < Vec < A > > , mut f : F ) -> Option < Vec < R > > where F : FnMut ( & A ) -> R , { let a = a . as_ref ( ) ? ; Some ( a . iter ( ) . map ( | a | f ( a ) ) . collect ( ) ) }
Work with Option<Vec<A>> as an applicative functor (for fixed length Vec)
Work with Option<Vec<A >> as an applicative functor ( for fixed length Vec )
a
&Option<Vec<A>>
f
F