Trait OptionZip

Source
pub trait OptionZip {
    // Provided methods
    fn zip<T1, T2>(v1: Option<T1>, v2: Option<T2>) -> Option<(T1, T2)> { ... }
    fn zip3<T1, T2, T3>(
        v1: Option<T1>,
        v2: Option<T2>,
        v3: Option<T3>,
    ) -> Option<(T1, T2, T3)> { ... }
    fn zip4<T1, T2, T3, T4>(
        v1: Option<T1>,
        v2: Option<T2>,
        v3: Option<T3>,
        v4: Option<T4>,
    ) -> Option<(T1, T2, T3, T4)> { ... }
    fn zip5<T1, T2, T3, T4, T5>(
        v1: Option<T1>,
        v2: Option<T2>,
        v3: Option<T3>,
        v4: Option<T4>,
        v5: Option<T5>,
    ) -> Option<(T1, T2, T3, T4, T5)> { ... }
}
Expand description

Trait for using zip function on Option type, import the trait and call it using Option::zip or any variant with more arguments

Provided Methods§

Source

fn zip<T1, T2>(v1: Option<T1>, v2: Option<T2>) -> Option<(T1, T2)>

Source

fn zip3<T1, T2, T3>( v1: Option<T1>, v2: Option<T2>, v3: Option<T3>, ) -> Option<(T1, T2, T3)>

Source

fn zip4<T1, T2, T3, T4>( v1: Option<T1>, v2: Option<T2>, v3: Option<T3>, v4: Option<T4>, ) -> Option<(T1, T2, T3, T4)>

Source

fn zip5<T1, T2, T3, T4, T5>( v1: Option<T1>, v2: Option<T2>, v3: Option<T3>, v4: Option<T4>, v5: Option<T5>, ) -> Option<(T1, T2, T3, T4, T5)>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§