Struct vectory::V2xu8[][src]

#[repr(C)]pub struct V2xu8(pub u8, pub u8);

A 2D vector type with elements of type u8.

Implementations

impl V2xu8[src]

pub const LANES: usize[src]

The number of lanes in this vector.

pub const ZERO: V2xu8[src]

A vector with all its elements set to zero.

pub const ONE: V2xu8[src]

A vector with all its elements set to one.

pub fn new(a0: u8, a1: u8) -> Self[src]

Constructs a new vector with the given values.

pub fn splat(value: u8) -> Self[src]

Construct a new vector by setting each of its element to the given value.

pub fn unit_0() -> V2xu8[src]

Returns a unit vector which points along the 0 axis.

pub fn unit_1() -> V2xu8[src]

Returns a unit vector which points along the 1 axis.

pub fn as_slice(&self) -> &[u8][src]

Views this vector as an immutable slice.

pub fn as_mut_slice(&mut self) -> &mut [u8][src]

Views this vector as a mutable slice.

pub fn sum(self) -> u8[src]

Returns the sum of all elements in this vector.

pub fn product(self) -> u8[src]

Returns the product of all elements in this vector.

pub fn dot(self, other: Self) -> u8[src]

Returns the dot product between self and other.

pub fn length_squared(self) -> u8[src]

Returns the sqaured length of this vector.

pub fn min(self, other: Self) -> Self[src]

Returns a vector containing the mininum values for each elements of self and other.

pub fn max(self, other: Self) -> Self[src]

Returns a vector containing the maximun values for each elements of self and other.

pub fn min_elem(self) -> u8[src]

Returns the smallest element in this vector.

pub fn max_elem(self) -> u8[src]

Returns the largest element in this vector.

pub fn apply<F>(&mut self, f: F) where
    F: FnMut(u8) -> u8
[src]

Applies the function f to each element in order, in-place.

pub fn clamp(self, min: Self, max: Self) -> Self[src]

Restricts each element in self to a certain interval given by the corresponing element in min and max.

Panics

For each corresponing element in min and max, panics if min > max, min is NaN, or max is NaN.

Trait Implementations

impl Add<V2xu8> for V2xu8[src]

type Output = Self

The resulting type after applying the + operator.

impl Add<V2xu8> for u8[src]

type Output = V2xu8

The resulting type after applying the + operator.

impl AddAssign<V2xu8> for V2xu8[src]

impl AsMut<[u8]> for V2xu8[src]

impl AsMut<V2xu8> for V2xu8[src]

impl AsRef<[u8]> for V2xu8[src]

impl AsRef<V2xu8> for V2xu8[src]

impl Borrow<[u8]> for V2xu8[src]

impl BorrowMut<[u8]> for V2xu8[src]

impl Clone for V2xu8[src]

impl Copy for V2xu8[src]

impl Deref for V2xu8[src]

type Target = [u8]

The resulting type after dereferencing.

impl DerefMut for V2xu8[src]

impl Div<V2xu8> for V2xu8[src]

type Output = Self

The resulting type after applying the / operator.

impl Div<u8> for V2xu8[src]

type Output = Self

The resulting type after applying the / operator.

impl DivAssign<V2xu8> for V2xu8[src]

impl DivAssign<u8> for V2xu8[src]

impl From<[u8; 2]> for V2xu8[src]

impl From<(u8, u8)> for V2xu8[src]

impl From<u8> for V2xu8[src]

impl Into<[u8; 2]> for V2xu8[src]

impl Into<(u8, u8)> for V2xu8[src]

impl Mul<V2xu8> for V2xu8[src]

type Output = Self

The resulting type after applying the * operator.

impl Mul<V2xu8> for u8[src]

type Output = V2xu8

The resulting type after applying the * operator.

impl Mul<u8> for V2xu8[src]

type Output = Self

The resulting type after applying the * operator.

impl MulAssign<V2xu8> for V2xu8[src]

impl MulAssign<u8> for V2xu8[src]

impl PartialEq<V2xu8> for V2xu8[src]

impl StructuralPartialEq for V2xu8[src]

impl Sub<V2xu8> for V2xu8[src]

type Output = Self

The resulting type after applying the - operator.

impl SubAssign<V2xu8> for V2xu8[src]

Auto Trait Implementations

impl RefUnwindSafe for V2xu8

impl Send for V2xu8

impl Sync for V2xu8

impl Unpin for V2xu8

impl UnwindSafe for V2xu8

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.