Struct glam::bool::BVec4A

source ·
#[repr(C, align(16))]
pub struct BVec4A { pub x: u32, pub y: u32, pub z: u32, pub w: u32, }
Expand description

A 4-dimensional u32 vector mask.

Fields§

§x: u32§y: u32§z: u32§w: u32

Implementations§

source§

impl BVec4A

source

pub const FALSE: Self = _

All false.

source

pub const TRUE: Self = _

All true.

source

pub const fn new(x: bool, y: bool, z: bool, w: bool) -> Self

Creates a new vector mask.

source

pub const fn splat(v: bool) -> Self

Creates a vector with all elements set to v.

source

pub fn bitmask(self) -> u32

Returns a bitmask with the lowest 4 bits set from the elements of self.

A true element results in a 1 bit and a false element in a 0 bit. Element x goes into the first lowest bit, element y into the second, etc.

source

pub fn any(self) -> bool

Returns true if any of the elements are true, false otherwise.

source

pub fn all(self) -> bool

Returns true if all the elements are true, false otherwise.

source

pub fn test(&self, index: usize) -> bool

Tests the value at index.

Panics if index is greater than 3.

source

pub fn set(&mut self, index: usize, value: bool)

Sets the element at index.

Panics if index is greater than 3.

Trait Implementations§

source§

impl BitAnd for BVec4A

§

type Output = BVec4A

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: Self) -> Self

Performs the & operation. Read more
source§

impl BitAndAssign for BVec4A

source§

fn bitand_assign(&mut self, rhs: Self)

Performs the &= operation. Read more
source§

impl BitOr for BVec4A

§

type Output = BVec4A

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: Self) -> Self

Performs the | operation. Read more
source§

impl BitOrAssign for BVec4A

source§

fn bitor_assign(&mut self, rhs: Self)

Performs the |= operation. Read more
source§

impl BitXor for BVec4A

§

type Output = BVec4A

The resulting type after applying the ^ operator.
source§

fn bitxor(self, rhs: Self) -> Self

Performs the ^ operation. Read more
source§

impl BitXorAssign for BVec4A

source§

fn bitxor_assign(&mut self, rhs: Self)

Performs the ^= operation. Read more
source§

impl Clone for BVec4A

source§

fn clone(&self) -> BVec4A

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BVec4A

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for BVec4A

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for BVec4A

source§

fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for BVec4A

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<BVec4A> for [bool; 4]

source§

fn from(mask: BVec4A) -> Self

Converts to this type from the input type.
source§

impl From<BVec4A> for [u32; 4]

source§

fn from(mask: BVec4A) -> Self

Converts to this type from the input type.
source§

impl Hash for BVec4A

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Not for BVec4A

§

type Output = BVec4A

The resulting type after applying the ! operator.
source§

fn not(self) -> Self

Performs the unary ! operation. Read more
source§

impl PartialEq for BVec4A

source§

fn eq(&self, other: &BVec4A) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for BVec4A

source§

fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Copy for BVec4A

source§

impl Eq for BVec4A

source§

impl StructuralEq for BVec4A

source§

impl StructuralPartialEq for BVec4A

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,