[−][src]Trait iter_transpose::IterTranspose 
Provides transpose_into_iter
function for the implementing structs.
This trait is implemented for both Option and Result, and it functions as an
extension of the API of these two structs. See the crate-level documentation
for more information and examples.
Associated Types
type Iter: Iterator[src]
The iterator type produced by transpose_into_iter.
Required methods
pub fn transpose_into_iter(self) -> Self::Iter[src]
If called on an option containing a collection or an iterator, it produces an iterator of options, and similarly for results.
Examples
use iter_transpose::IterTranspose; assert_eq!( Some(vec![1, 2, 3]).transpose_into_iter().take(3).collect::<Vec<_>>(), vec![Some(1), Some(2), Some(3)], ); assert_eq!( Result::<Vec<i32>, ()>::Ok(vec![1, 2, 3]).transpose_into_iter().take(3).collect::<Vec<_>>(), vec![Result::<i32, ()>::Ok(1), Ok(2), Ok(3)], ); assert_eq!( Option::<Vec<i32>>::None.transpose_into_iter().take(3).collect::<Vec<_>>(), vec![None, None, None], ); assert_eq!( Result::<Vec<i32>, ()>::Err(()).transpose_into_iter().take(3).collect::<Vec<_>>(), vec![Result::<i32, ()>::Err(()), Err(()), Err(())], );
Implementations on Foreign Types
impl<I> IterTranspose for Option<I> where
    I: IntoIterator, [src]
I: IntoIterator,
type Iter = OptionTransposedIter<I::IntoIter>
pub fn transpose_into_iter(self) -> Self::Iter[src]
impl<I, E> IterTranspose for Result<I, E> where
    I: IntoIterator,
    E: Clone + Debug, [src]
I: IntoIterator,
E: Clone + Debug,