Trait HPair

Source
pub trait HPair {
    type Out;

    // Required method
    fn hpair(self) -> Self::Out;
}
Expand description

Higher order pairing.

A higher order pairing is used pair up components of a pair of data structures. This is used before binary higher order maps of the type f : (T, T) -> U.

Required Associated Types§

Source

type Out

Output type.

Required Methods§

Source

fn hpair(self) -> Self::Out

Returns the higher order transposed value.

Implementations on Foreign Types§

Source§

impl HPair for (f32, f32)

Source§

type Out = (f32, f32)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (f64, f64)

Source§

type Out = (f64, f64)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (i8, i8)

Source§

type Out = (i8, i8)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (i16, i16)

Source§

type Out = (i16, i16)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (i32, i32)

Source§

type Out = (i32, i32)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (i64, i64)

Source§

type Out = (i64, i64)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (isize, isize)

Source§

type Out = (isize, isize)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (u8, u8)

Source§

type Out = (u8, u8)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (u16, u16)

Source§

type Out = (u16, u16)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (u32, u32)

Source§

type Out = (u32, u32)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (u64, u64)

Source§

type Out = (u64, u64)

Source§

fn hpair(self) -> Self

Source§

impl HPair for (usize, usize)

Source§

type Out = (usize, usize)

Source§

fn hpair(self) -> Self

Source§

impl<T> HPair for ([T; 2], [T; 2])
where (T, T): HPair,

Source§

type Out = [<(T, T) as HPair>::Out; 2]

Source§

fn hpair(self) -> Self::Out

Source§

impl<T> HPair for ([T; 3], [T; 3])
where (T, T): HPair,

Source§

type Out = [<(T, T) as HPair>::Out; 3]

Source§

fn hpair(self) -> Self::Out

Source§

impl<T> HPair for ([T; 4], [T; 4])
where (T, T): HPair,

Source§

type Out = [<(T, T) as HPair>::Out; 4]

Source§

fn hpair(self) -> Self::Out

Source§

impl<T> HPair for ([T; 5], [T; 5])
where (T, T): HPair,

Source§

type Out = [<(T, T) as HPair>::Out; 5]

Source§

fn hpair(self) -> Self::Out

Source§

impl<T> HPair for ([T; 6], [T; 6])
where (T, T): HPair,

Source§

type Out = [<(T, T) as HPair>::Out; 6]

Source§

fn hpair(self) -> Self::Out

Source§

impl<T> HPair for (Vec<T>, Vec<T>)
where (T, T): HPair,

Source§

type Out = Vec<<(T, T) as HPair>::Out>

Source§

fn hpair(self) -> Self::Out

Implementors§