Trait faster::intrin::PackedMerge [] [src]

pub trait PackedMerge {
    fn merge_halves(&self, other: Self) -> Self;
fn merge_interleaved(&self, other: Self) -> Self;
fn merge_partitioned(&self, other: Self, offset: usize) -> Self; }

Required Methods

Return a vector with the first half populated by the first half of self, and the second half populated by the second half of other.

extern crate faster;
use faster::*;

assert_eq!(u8s(2).merge_halves(u8s(3)), u8s::halfs(2, 3));

Return a vector containing the even elements of self interleaved with the odd elements of other, starting with the first element of self.

extern crate faster;
use faster::*;

assert_eq!(u8s(2).merge_interleaved(u8s(3)), u8s::interleave(2, 3));

Return a vector containing the first offset elements of self, then the last (Self::WIDTH - offset) elements of other.

extern crate faster;
use faster::*;

assert_eq!(u8s(2).merge_partitioned(u8s(3), 2), u8s::partition(2u8, 3u8, 2));

Implementors