::std::

Primitive tuple

Implementations

impl<S, T, #uint N> [(S, T); N]
fn unzip(self) -> ([S; N], [T; N])

Splits an array of pairs into a pair of arrays.

Both arrays produced have the same length as the input array. The first element of the left array is the first element of the first tuple, the second element the first element of the second tuple, and so on. In other words, the array [(l0, r0), (l1, r1), (l2, r2), ...] is split into [l0, l1, l2, ...] and [r0, r1, r2, ...].

Examples

let (l, r) = [(10u8, 20u8), (11u8, 21u8), (12u8, 22u8)].unzip();
assert l == [10u8, 11u8, 12u8];
assert r == [20u8, 21u8, 22u8];
let empty: [(uint<8>, uint<8>); 0] = [];
assert empty.unzip() == ([], []);

Trait Implementations

impl Default for ()
fn hacky_default(self) -> Self
impl<T0: Default> Default for (T0)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default> Default for (T0, T1)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default> Default for (T0, T1, T2)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default, T3: Default> Default for (T0, T1, T2, T3)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default, T3: Default, T4: Default> Default for (T0, T1, T2, T3, T4)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default, T3: Default, T4: Default, T5: Default> Default for (T0, T1, T2, T3, T4, T5)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default, T3: Default, T4: Default, T5: Default, T6: Default> Default for (T0, T1, T2, T3, T4, T5, T6)
fn hacky_default(self) -> Self
impl<T0: Default, T1: Default, T2: Default, T3: Default, T4: Default, T5: Default, T6: Default, T7: Default> Default for (T0, T1, T2, T3, T4, T5, T6, T7)
fn hacky_default(self) -> Self
impl Data for ()
impl<T0: Data> Data for (T0)
impl<T0: Data, T1: Data> Data for (T0, T1)
impl<T0: Data, T1: Data, T2: Data> Data for (T0, T1, T2)
impl<T0: Data, T1: Data, T2: Data, T3: Data> Data for (T0, T1, T2, T3)
impl<T0: Data, T1: Data, T2: Data, T3: Data, T4: Data> Data for (T0, T1, T2, T3, T4)
impl<T0: Data, T1: Data, T2: Data, T3: Data, T4: Data, T5: Data> Data for (T0, T1, T2, T3, T4, T5)
impl<T0: Data, T1: Data, T2: Data, T3: Data, T4: Data, T5: Data, T6: Data> Data for (T0, T1, T2, T3, T4, T5, T6)
impl<T0: Data, T1: Data, T2: Data, T3: Data, T4: Data, T5: Data, T6: Data, T7: Data> Data for (T0, T1, T2, T3, T4, T5, T6, T7)
impl Copy for ()
impl<T0: Copy> Copy for (T0)
impl<T0: Copy, T1: Copy> Copy for (T0, T1)
impl<T0: Copy, T1: Copy, T2: Copy> Copy for (T0, T1, T2)
impl<T0: Copy, T1: Copy, T2: Copy, T3: Copy> Copy for (T0, T1, T2, T3)
impl<T0: Copy, T1: Copy, T2: Copy, T3: Copy, T4: Copy> Copy for (T0, T1, T2, T3, T4)
impl<T0: Copy, T1: Copy, T2: Copy, T3: Copy, T4: Copy, T5: Copy> Copy for (T0, T1, T2, T3, T4, T5)
impl<T0: Copy, T1: Copy, T2: Copy, T3: Copy, T4: Copy, T5: Copy, T6: Copy> Copy for (T0, T1, T2, T3, T4, T5, T6)
impl<T0: Copy, T1: Copy, T2: Copy, T3: Copy, T4: Copy, T5: Copy, T6: Copy, T7: Copy> Copy for (T0, T1, T2, T3, T4, T5, T6, T7)
impl PartialEq for ()
fn eq(self, rhs: Self) -> bool
fn ne(self, rhs: Self) -> bool
impl<T1: PartialEq> PartialEq for (T1)
fn eq(self, rhs: Self) -> bool
fn ne(self, rhs: Self) -> bool
impl<T1: PartialEq, T2: PartialEq> PartialEq for (T1, T2)
fn eq(self, rhs: Self) -> bool
fn ne(self, rhs: Self) -> bool
impl<T1: PartialEq, T2: PartialEq, T3: PartialEq> PartialEq for (T1, T2, T3)
fn eq(self, rhs: Self) -> bool
fn ne(self, rhs: Self) -> bool
impl<T1: PartialEq, T2: PartialEq, T3: PartialEq, T4> PartialEq for (T1, T2, T3, T4)
fn eq(self, rhs: Self) -> bool
fn ne(self, rhs: Self) -> bool