#[repr(C)]pub struct I16Vec4 {
pub x: i16,
pub y: i16,
pub z: i16,
pub w: i16,
}
Expand description
A 4-dimensional vector.
Fields§
§x: i16
§y: i16
§z: i16
§w: i16
Implementations§
source§impl I16Vec4
impl I16Vec4
sourcepub fn select(mask: BVec4, if_true: I16Vec4, if_false: I16Vec4) -> I16Vec4
pub fn select(mask: BVec4, if_true: I16Vec4, if_false: I16Vec4) -> I16Vec4
Creates a vector from the elements in if_true
and if_false
, selecting which to use
for each element of self
.
A true element in the mask uses the corresponding element from if_true
, and false
uses the element from if_false
.
sourcepub const fn from_array(a: [i16; 4]) -> I16Vec4
pub const fn from_array(a: [i16; 4]) -> I16Vec4
Creates a new vector from an array.
sourcepub const fn from_slice(slice: &[i16]) -> I16Vec4
pub const fn from_slice(slice: &[i16]) -> I16Vec4
Creates a vector from the first 4 values in slice
.
§Panics
Panics if slice
is less than 4 elements long.
sourcepub fn write_to_slice(self, slice: &mut [i16])
pub fn write_to_slice(self, slice: &mut [i16])
Writes the elements of self
to the first 4 elements in slice
.
§Panics
Panics if slice
is less than 4 elements long.
sourcepub fn truncate(self) -> I16Vec3
pub fn truncate(self) -> I16Vec3
Creates a 3D vector from the x
, y
and z
elements of self
, discarding w
.
Truncation to I16Vec3
may also be performed by using self.xyz()
.
sourcepub fn with_x(self, x: i16) -> I16Vec4
pub fn with_x(self, x: i16) -> I16Vec4
Creates a 4D vector from self
with the given value of x
.
sourcepub fn with_y(self, y: i16) -> I16Vec4
pub fn with_y(self, y: i16) -> I16Vec4
Creates a 4D vector from self
with the given value of y
.
sourcepub fn with_z(self, z: i16) -> I16Vec4
pub fn with_z(self, z: i16) -> I16Vec4
Creates a 4D vector from self
with the given value of z
.
sourcepub fn with_w(self, w: i16) -> I16Vec4
pub fn with_w(self, w: i16) -> I16Vec4
Creates a 4D vector from self
with the given value of w
.
sourcepub fn dot_into_vec(self, rhs: I16Vec4) -> I16Vec4
pub fn dot_into_vec(self, rhs: I16Vec4) -> I16Vec4
Returns a vector where every component is the dot product of self
and rhs
.
sourcepub fn min(self, rhs: I16Vec4) -> I16Vec4
pub fn min(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the minimum values for each element of self
and rhs
.
In other words this computes [self.x.min(rhs.x), self.y.min(rhs.y), ..]
.
sourcepub fn max(self, rhs: I16Vec4) -> I16Vec4
pub fn max(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the maximum values for each element of self
and rhs
.
In other words this computes [self.x.max(rhs.x), self.y.max(rhs.y), ..]
.
sourcepub fn clamp(self, min: I16Vec4, max: I16Vec4) -> I16Vec4
pub fn clamp(self, min: I16Vec4, max: I16Vec4) -> I16Vec4
Component-wise clamping of values, similar to i16::clamp
.
Each element in min
must be less-or-equal to the corresponding element in max
.
§Panics
Will panic if min
is greater than max
when glam_assert
is enabled.
sourcepub fn min_element(self) -> i16
pub fn min_element(self) -> i16
Returns the horizontal minimum of self
.
In other words this computes min(x, y, ..)
.
sourcepub fn max_element(self) -> i16
pub fn max_element(self) -> i16
Returns the horizontal maximum of self
.
In other words this computes max(x, y, ..)
.
sourcepub fn element_sum(self) -> i16
pub fn element_sum(self) -> i16
Returns the sum of all elements of self
.
In other words, this computes self.x + self.y + ..
.
sourcepub fn element_product(self) -> i16
pub fn element_product(self) -> i16
Returns the product of all elements of self
.
In other words, this computes self.x * self.y * ..
.
sourcepub fn cmpeq(self, rhs: I16Vec4) -> BVec4
pub fn cmpeq(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a ==
comparison for each element of
self
and rhs
.
In other words, this computes [self.x == rhs.x, self.y == rhs.y, ..]
for all
elements.
sourcepub fn cmpne(self, rhs: I16Vec4) -> BVec4
pub fn cmpne(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a !=
comparison for each element of
self
and rhs
.
In other words this computes [self.x != rhs.x, self.y != rhs.y, ..]
for all
elements.
sourcepub fn cmpge(self, rhs: I16Vec4) -> BVec4
pub fn cmpge(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a >=
comparison for each element of
self
and rhs
.
In other words this computes [self.x >= rhs.x, self.y >= rhs.y, ..]
for all
elements.
sourcepub fn cmpgt(self, rhs: I16Vec4) -> BVec4
pub fn cmpgt(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a >
comparison for each element of
self
and rhs
.
In other words this computes [self.x > rhs.x, self.y > rhs.y, ..]
for all
elements.
sourcepub fn cmple(self, rhs: I16Vec4) -> BVec4
pub fn cmple(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a <=
comparison for each element of
self
and rhs
.
In other words this computes [self.x <= rhs.x, self.y <= rhs.y, ..]
for all
elements.
sourcepub fn cmplt(self, rhs: I16Vec4) -> BVec4
pub fn cmplt(self, rhs: I16Vec4) -> BVec4
Returns a vector mask containing the result of a <
comparison for each element of
self
and rhs
.
In other words this computes [self.x < rhs.x, self.y < rhs.y, ..]
for all
elements.
sourcepub fn abs(self) -> I16Vec4
pub fn abs(self) -> I16Vec4
Returns a vector containing the absolute value of each element of self
.
sourcepub fn signum(self) -> I16Vec4
pub fn signum(self) -> I16Vec4
Returns a vector with elements representing the sign of self
.
0
if the number is zero1
if the number is positive-1
if the number is negative
sourcepub fn is_negative_bitmask(self) -> u32
pub fn is_negative_bitmask(self) -> u32
Returns a bitmask with the lowest 4 bits set to the sign bits from the elements of self
.
A negative element results in a 1
bit and a positive element in a 0
bit. Element x
goes
into the first lowest bit, element y
into the second, etc.
sourcepub fn length_squared(self) -> i16
pub fn length_squared(self) -> i16
Computes the squared length of self
.
sourcepub fn distance_squared(self, rhs: I16Vec4) -> i16
pub fn distance_squared(self, rhs: I16Vec4) -> i16
Compute the squared euclidean distance between two points in space.
sourcepub fn div_euclid(self, rhs: I16Vec4) -> I16Vec4
pub fn div_euclid(self, rhs: I16Vec4) -> I16Vec4
Returns the element-wise quotient of [Euclidean division] of self
by rhs
.
§Panics
This function will panic if any rhs
element is 0 or the division results in overflow.
sourcepub fn rem_euclid(self, rhs: I16Vec4) -> I16Vec4
pub fn rem_euclid(self, rhs: I16Vec4) -> I16Vec4
Returns the element-wise remainder of Euclidean division of self
by rhs
.
§Panics
This function will panic if any rhs
element is 0 or the division results in overflow.
sourcepub fn as_u16vec4(&self) -> U16Vec4
pub fn as_u16vec4(&self) -> U16Vec4
Casts all elements of self
to u16
.
sourcepub fn as_i64vec4(&self) -> I64Vec4
pub fn as_i64vec4(&self) -> I64Vec4
Casts all elements of self
to i64
.
sourcepub fn as_u64vec4(&self) -> U64Vec4
pub fn as_u64vec4(&self) -> U64Vec4
Casts all elements of self
to u64
.
sourcepub const fn wrapping_add(self, rhs: I16Vec4) -> I16Vec4
pub const fn wrapping_add(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the wrapping addition of self
and rhs
.
In other words this computes [self.x.wrapping_add(rhs.x), self.y.wrapping_add(rhs.y), ..]
.
sourcepub const fn wrapping_sub(self, rhs: I16Vec4) -> I16Vec4
pub const fn wrapping_sub(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the wrapping subtraction of self
and rhs
.
In other words this computes [self.x.wrapping_sub(rhs.x), self.y.wrapping_sub(rhs.y), ..]
.
sourcepub const fn wrapping_mul(self, rhs: I16Vec4) -> I16Vec4
pub const fn wrapping_mul(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the wrapping multiplication of self
and rhs
.
In other words this computes [self.x.wrapping_mul(rhs.x), self.y.wrapping_mul(rhs.y), ..]
.
sourcepub const fn wrapping_div(self, rhs: I16Vec4) -> I16Vec4
pub const fn wrapping_div(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the wrapping division of self
and rhs
.
In other words this computes [self.x.wrapping_div(rhs.x), self.y.wrapping_div(rhs.y), ..]
.
sourcepub const fn saturating_add(self, rhs: I16Vec4) -> I16Vec4
pub const fn saturating_add(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the saturating addition of self
and rhs
.
In other words this computes [self.x.saturating_add(rhs.x), self.y.saturating_add(rhs.y), ..]
.
sourcepub const fn saturating_sub(self, rhs: I16Vec4) -> I16Vec4
pub const fn saturating_sub(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the saturating subtraction of self
and rhs
.
In other words this computes [self.x.saturating_sub(rhs.x), self.y.saturating_sub(rhs.y), ..]
.
sourcepub const fn saturating_mul(self, rhs: I16Vec4) -> I16Vec4
pub const fn saturating_mul(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the saturating multiplication of self
and rhs
.
In other words this computes [self.x.saturating_mul(rhs.x), self.y.saturating_mul(rhs.y), ..]
.
sourcepub const fn saturating_div(self, rhs: I16Vec4) -> I16Vec4
pub const fn saturating_div(self, rhs: I16Vec4) -> I16Vec4
Returns a vector containing the saturating division of self
and rhs
.
In other words this computes [self.x.saturating_div(rhs.x), self.y.saturating_div(rhs.y), ..]
.
sourcepub const fn wrapping_add_unsigned(self, rhs: U16Vec4) -> I16Vec4
pub const fn wrapping_add_unsigned(self, rhs: U16Vec4) -> I16Vec4
Returns a vector containing the wrapping addition of self
and unsigned vector rhs
.
In other words this computes [self.x.wrapping_add_unsigned(rhs.x), self.y.wrapping_add_unsigned(rhs.y), ..]
.
sourcepub const fn wrapping_sub_unsigned(self, rhs: U16Vec4) -> I16Vec4
pub const fn wrapping_sub_unsigned(self, rhs: U16Vec4) -> I16Vec4
Returns a vector containing the wrapping subtraction of self
and unsigned vector rhs
.
In other words this computes [self.x.wrapping_sub_unsigned(rhs.x), self.y.wrapping_sub_unsigned(rhs.y), ..]
.
sourcepub const fn saturating_add_unsigned(self, rhs: U16Vec4) -> I16Vec4
pub const fn saturating_add_unsigned(self, rhs: U16Vec4) -> I16Vec4
In other words this computes [self.x.saturating_add_unsigned(rhs.x), self.y.saturating_add_unsigned(rhs.y), ..]
.
sourcepub const fn saturating_sub_unsigned(self, rhs: U16Vec4) -> I16Vec4
pub const fn saturating_sub_unsigned(self, rhs: U16Vec4) -> I16Vec4
Returns a vector containing the saturating subtraction of self
and unsigned vector rhs
.
In other words this computes [self.x.saturating_sub_unsigned(rhs.x), self.y.saturating_sub_unsigned(rhs.y), ..]
.
Trait Implementations§
source§impl AddAssign<i16> for I16Vec4
impl AddAssign<i16> for I16Vec4
source§fn add_assign(&mut self, rhs: i16)
fn add_assign(&mut self, rhs: i16)
+=
operation. Read moresource§impl AddAssign for I16Vec4
impl AddAssign for I16Vec4
source§fn add_assign(&mut self, rhs: I16Vec4)
fn add_assign(&mut self, rhs: I16Vec4)
+=
operation. Read moresource§impl<'de> Deserialize<'de> for I16Vec4
impl<'de> Deserialize<'de> for I16Vec4
source§fn deserialize<D>(
deserializer: D
) -> Result<I16Vec4, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<I16Vec4, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
source§impl DivAssign<i16> for I16Vec4
impl DivAssign<i16> for I16Vec4
source§fn div_assign(&mut self, rhs: i16)
fn div_assign(&mut self, rhs: i16)
/=
operation. Read moresource§impl DivAssign for I16Vec4
impl DivAssign for I16Vec4
source§fn div_assign(&mut self, rhs: I16Vec4)
fn div_assign(&mut self, rhs: I16Vec4)
/=
operation. Read moresource§impl MulAssign<i16> for I16Vec4
impl MulAssign<i16> for I16Vec4
source§fn mul_assign(&mut self, rhs: i16)
fn mul_assign(&mut self, rhs: i16)
*=
operation. Read moresource§impl MulAssign for I16Vec4
impl MulAssign for I16Vec4
source§fn mul_assign(&mut self, rhs: I16Vec4)
fn mul_assign(&mut self, rhs: I16Vec4)
*=
operation. Read moresource§impl PartialEq for I16Vec4
impl PartialEq for I16Vec4
source§impl RemAssign<i16> for I16Vec4
impl RemAssign<i16> for I16Vec4
source§fn rem_assign(&mut self, rhs: i16)
fn rem_assign(&mut self, rhs: i16)
%=
operation. Read moresource§impl RemAssign for I16Vec4
impl RemAssign for I16Vec4
source§fn rem_assign(&mut self, rhs: I16Vec4)
fn rem_assign(&mut self, rhs: I16Vec4)
%=
operation. Read moresource§impl Serialize for I16Vec4
impl Serialize for I16Vec4
source§fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
source§impl SubAssign<i16> for I16Vec4
impl SubAssign<i16> for I16Vec4
source§fn sub_assign(&mut self, rhs: i16)
fn sub_assign(&mut self, rhs: i16)
-=
operation. Read moresource§impl SubAssign for I16Vec4
impl SubAssign for I16Vec4
source§fn sub_assign(&mut self, rhs: I16Vec4)
fn sub_assign(&mut self, rhs: I16Vec4)
-=
operation. Read moresource§impl Vec4Swizzles for I16Vec4
impl Vec4Swizzles for I16Vec4
type Vec2 = I16Vec2
type Vec3 = I16Vec3
fn xx(self) -> I16Vec2
fn xy(self) -> I16Vec2
fn xz(self) -> I16Vec2
fn xw(self) -> I16Vec2
fn yx(self) -> I16Vec2
fn yy(self) -> I16Vec2
fn yz(self) -> I16Vec2
fn yw(self) -> I16Vec2
fn zx(self) -> I16Vec2
fn zy(self) -> I16Vec2
fn zz(self) -> I16Vec2
fn zw(self) -> I16Vec2
fn wx(self) -> I16Vec2
fn wy(self) -> I16Vec2
fn wz(self) -> I16Vec2
fn ww(self) -> I16Vec2
fn xxx(self) -> I16Vec3
fn xxy(self) -> I16Vec3
fn xxz(self) -> I16Vec3
fn xxw(self) -> I16Vec3
fn xyx(self) -> I16Vec3
fn xyy(self) -> I16Vec3
fn xyz(self) -> I16Vec3
fn xyw(self) -> I16Vec3
fn xzx(self) -> I16Vec3
fn xzy(self) -> I16Vec3
fn xzz(self) -> I16Vec3
fn xzw(self) -> I16Vec3
fn xwx(self) -> I16Vec3
fn xwy(self) -> I16Vec3
fn xwz(self) -> I16Vec3
fn xww(self) -> I16Vec3
fn yxx(self) -> I16Vec3
fn yxy(self) -> I16Vec3
fn yxz(self) -> I16Vec3
fn yxw(self) -> I16Vec3
fn yyx(self) -> I16Vec3
fn yyy(self) -> I16Vec3
fn yyz(self) -> I16Vec3
fn yyw(self) -> I16Vec3
fn yzx(self) -> I16Vec3
fn yzy(self) -> I16Vec3
fn yzz(self) -> I16Vec3
fn yzw(self) -> I16Vec3
fn ywx(self) -> I16Vec3
fn ywy(self) -> I16Vec3
fn ywz(self) -> I16Vec3
fn yww(self) -> I16Vec3
fn zxx(self) -> I16Vec3
fn zxy(self) -> I16Vec3
fn zxz(self) -> I16Vec3
fn zxw(self) -> I16Vec3
fn zyx(self) -> I16Vec3
fn zyy(self) -> I16Vec3
fn zyz(self) -> I16Vec3
fn zyw(self) -> I16Vec3
fn zzx(self) -> I16Vec3
fn zzy(self) -> I16Vec3
fn zzz(self) -> I16Vec3
fn zzw(self) -> I16Vec3
fn zwx(self) -> I16Vec3
fn zwy(self) -> I16Vec3
fn zwz(self) -> I16Vec3
fn zww(self) -> I16Vec3
fn wxx(self) -> I16Vec3
fn wxy(self) -> I16Vec3
fn wxz(self) -> I16Vec3
fn wxw(self) -> I16Vec3
fn wyx(self) -> I16Vec3
fn wyy(self) -> I16Vec3
fn wyz(self) -> I16Vec3
fn wyw(self) -> I16Vec3
fn wzx(self) -> I16Vec3
fn wzy(self) -> I16Vec3
fn wzz(self) -> I16Vec3
fn wzw(self) -> I16Vec3
fn wwx(self) -> I16Vec3
fn wwy(self) -> I16Vec3
fn wwz(self) -> I16Vec3
fn www(self) -> I16Vec3
fn xxxx(self) -> I16Vec4
fn xxxy(self) -> I16Vec4
fn xxxz(self) -> I16Vec4
fn xxxw(self) -> I16Vec4
fn xxyx(self) -> I16Vec4
fn xxyy(self) -> I16Vec4
fn xxyz(self) -> I16Vec4
fn xxyw(self) -> I16Vec4
fn xxzx(self) -> I16Vec4
fn xxzy(self) -> I16Vec4
fn xxzz(self) -> I16Vec4
fn xxzw(self) -> I16Vec4
fn xxwx(self) -> I16Vec4
fn xxwy(self) -> I16Vec4
fn xxwz(self) -> I16Vec4
fn xxww(self) -> I16Vec4
fn xyxx(self) -> I16Vec4
fn xyxy(self) -> I16Vec4
fn xyxz(self) -> I16Vec4
fn xyxw(self) -> I16Vec4
fn xyyx(self) -> I16Vec4
fn xyyy(self) -> I16Vec4
fn xyyz(self) -> I16Vec4
fn xyyw(self) -> I16Vec4
fn xyzx(self) -> I16Vec4
fn xyzy(self) -> I16Vec4
fn xyzz(self) -> I16Vec4
fn xyzw(self) -> I16Vec4
fn xywx(self) -> I16Vec4
fn xywy(self) -> I16Vec4
fn xywz(self) -> I16Vec4
fn xyww(self) -> I16Vec4
fn xzxx(self) -> I16Vec4
fn xzxy(self) -> I16Vec4
fn xzxz(self) -> I16Vec4
fn xzxw(self) -> I16Vec4
fn xzyx(self) -> I16Vec4
fn xzyy(self) -> I16Vec4
fn xzyz(self) -> I16Vec4
fn xzyw(self) -> I16Vec4
fn xzzx(self) -> I16Vec4
fn xzzy(self) -> I16Vec4
fn xzzz(self) -> I16Vec4
fn xzzw(self) -> I16Vec4
fn xzwx(self) -> I16Vec4
fn xzwy(self) -> I16Vec4
fn xzwz(self) -> I16Vec4
fn xzww(self) -> I16Vec4
fn xwxx(self) -> I16Vec4
fn xwxy(self) -> I16Vec4
fn xwxz(self) -> I16Vec4
fn xwxw(self) -> I16Vec4
fn xwyx(self) -> I16Vec4
fn xwyy(self) -> I16Vec4
fn xwyz(self) -> I16Vec4
fn xwyw(self) -> I16Vec4
fn xwzx(self) -> I16Vec4
fn xwzy(self) -> I16Vec4
fn xwzz(self) -> I16Vec4
fn xwzw(self) -> I16Vec4
fn xwwx(self) -> I16Vec4
fn xwwy(self) -> I16Vec4
fn xwwz(self) -> I16Vec4
fn xwww(self) -> I16Vec4
fn yxxx(self) -> I16Vec4
fn yxxy(self) -> I16Vec4
fn yxxz(self) -> I16Vec4
fn yxxw(self) -> I16Vec4
fn yxyx(self) -> I16Vec4
fn yxyy(self) -> I16Vec4
fn yxyz(self) -> I16Vec4
fn yxyw(self) -> I16Vec4
fn yxzx(self) -> I16Vec4
fn yxzy(self) -> I16Vec4
fn yxzz(self) -> I16Vec4
fn yxzw(self) -> I16Vec4
fn yxwx(self) -> I16Vec4
fn yxwy(self) -> I16Vec4
fn yxwz(self) -> I16Vec4
fn yxww(self) -> I16Vec4
fn yyxx(self) -> I16Vec4
fn yyxy(self) -> I16Vec4
fn yyxz(self) -> I16Vec4
fn yyxw(self) -> I16Vec4
fn yyyx(self) -> I16Vec4
fn yyyy(self) -> I16Vec4
fn yyyz(self) -> I16Vec4
fn yyyw(self) -> I16Vec4
fn yyzx(self) -> I16Vec4
fn yyzy(self) -> I16Vec4
fn yyzz(self) -> I16Vec4
fn yyzw(self) -> I16Vec4
fn yywx(self) -> I16Vec4
fn yywy(self) -> I16Vec4
fn yywz(self) -> I16Vec4
fn yyww(self) -> I16Vec4
fn yzxx(self) -> I16Vec4
fn yzxy(self) -> I16Vec4
fn yzxz(self) -> I16Vec4
fn yzxw(self) -> I16Vec4
fn yzyx(self) -> I16Vec4
fn yzyy(self) -> I16Vec4
fn yzyz(self) -> I16Vec4
fn yzyw(self) -> I16Vec4
fn yzzx(self) -> I16Vec4
fn yzzy(self) -> I16Vec4
fn yzzz(self) -> I16Vec4
fn yzzw(self) -> I16Vec4
fn yzwx(self) -> I16Vec4
fn yzwy(self) -> I16Vec4
fn yzwz(self) -> I16Vec4
fn yzww(self) -> I16Vec4
fn ywxx(self) -> I16Vec4
fn ywxy(self) -> I16Vec4
fn ywxz(self) -> I16Vec4
fn ywxw(self) -> I16Vec4
fn ywyx(self) -> I16Vec4
fn ywyy(self) -> I16Vec4
fn ywyz(self) -> I16Vec4
fn ywyw(self) -> I16Vec4
fn ywzx(self) -> I16Vec4
fn ywzy(self) -> I16Vec4
fn ywzz(self) -> I16Vec4
fn ywzw(self) -> I16Vec4
fn ywwx(self) -> I16Vec4
fn ywwy(self) -> I16Vec4
fn ywwz(self) -> I16Vec4
fn ywww(self) -> I16Vec4
fn zxxx(self) -> I16Vec4
fn zxxy(self) -> I16Vec4
fn zxxz(self) -> I16Vec4
fn zxxw(self) -> I16Vec4
fn zxyx(self) -> I16Vec4
fn zxyy(self) -> I16Vec4
fn zxyz(self) -> I16Vec4
fn zxyw(self) -> I16Vec4
fn zxzx(self) -> I16Vec4
fn zxzy(self) -> I16Vec4
fn zxzz(self) -> I16Vec4
fn zxzw(self) -> I16Vec4
fn zxwx(self) -> I16Vec4
fn zxwy(self) -> I16Vec4
fn zxwz(self) -> I16Vec4
fn zxww(self) -> I16Vec4
fn zyxx(self) -> I16Vec4
fn zyxy(self) -> I16Vec4
fn zyxz(self) -> I16Vec4
fn zyxw(self) -> I16Vec4
fn zyyx(self) -> I16Vec4
fn zyyy(self) -> I16Vec4
fn zyyz(self) -> I16Vec4
fn zyyw(self) -> I16Vec4
fn zyzx(self) -> I16Vec4
fn zyzy(self) -> I16Vec4
fn zyzz(self) -> I16Vec4
fn zyzw(self) -> I16Vec4
fn zywx(self) -> I16Vec4
fn zywy(self) -> I16Vec4
fn zywz(self) -> I16Vec4
fn zyww(self) -> I16Vec4
fn zzxx(self) -> I16Vec4
fn zzxy(self) -> I16Vec4
fn zzxz(self) -> I16Vec4
fn zzxw(self) -> I16Vec4
fn zzyx(self) -> I16Vec4
fn zzyy(self) -> I16Vec4
fn zzyz(self) -> I16Vec4
fn zzyw(self) -> I16Vec4
fn zzzx(self) -> I16Vec4
fn zzzy(self) -> I16Vec4
fn zzzz(self) -> I16Vec4
fn zzzw(self) -> I16Vec4
fn zzwx(self) -> I16Vec4
fn zzwy(self) -> I16Vec4
fn zzwz(self) -> I16Vec4
fn zzww(self) -> I16Vec4
fn zwxx(self) -> I16Vec4
fn zwxy(self) -> I16Vec4
fn zwxz(self) -> I16Vec4
fn zwxw(self) -> I16Vec4
fn zwyx(self) -> I16Vec4
fn zwyy(self) -> I16Vec4
fn zwyz(self) -> I16Vec4
fn zwyw(self) -> I16Vec4
fn zwzx(self) -> I16Vec4
fn zwzy(self) -> I16Vec4
fn zwzz(self) -> I16Vec4
fn zwzw(self) -> I16Vec4
fn zwwx(self) -> I16Vec4
fn zwwy(self) -> I16Vec4
fn zwwz(self) -> I16Vec4
fn zwww(self) -> I16Vec4
fn wxxx(self) -> I16Vec4
fn wxxy(self) -> I16Vec4
fn wxxz(self) -> I16Vec4
fn wxxw(self) -> I16Vec4
fn wxyx(self) -> I16Vec4
fn wxyy(self) -> I16Vec4
fn wxyz(self) -> I16Vec4
fn wxyw(self) -> I16Vec4
fn wxzx(self) -> I16Vec4
fn wxzy(self) -> I16Vec4
fn wxzz(self) -> I16Vec4
fn wxzw(self) -> I16Vec4
fn wxwx(self) -> I16Vec4
fn wxwy(self) -> I16Vec4
fn wxwz(self) -> I16Vec4
fn wxww(self) -> I16Vec4
fn wyxx(self) -> I16Vec4
fn wyxy(self) -> I16Vec4
fn wyxz(self) -> I16Vec4
fn wyxw(self) -> I16Vec4
fn wyyx(self) -> I16Vec4
fn wyyy(self) -> I16Vec4
fn wyyz(self) -> I16Vec4
fn wyyw(self) -> I16Vec4
fn wyzx(self) -> I16Vec4
fn wyzy(self) -> I16Vec4
fn wyzz(self) -> I16Vec4
fn wyzw(self) -> I16Vec4
fn wywx(self) -> I16Vec4
fn wywy(self) -> I16Vec4
fn wywz(self) -> I16Vec4
fn wyww(self) -> I16Vec4
fn wzxx(self) -> I16Vec4
fn wzxy(self) -> I16Vec4
fn wzxz(self) -> I16Vec4
fn wzxw(self) -> I16Vec4
fn wzyx(self) -> I16Vec4
fn wzyy(self) -> I16Vec4
fn wzyz(self) -> I16Vec4
fn wzyw(self) -> I16Vec4
fn wzzx(self) -> I16Vec4
fn wzzy(self) -> I16Vec4
fn wzzz(self) -> I16Vec4
fn wzzw(self) -> I16Vec4
fn wzwx(self) -> I16Vec4
fn wzwy(self) -> I16Vec4
fn wzwz(self) -> I16Vec4
fn wzww(self) -> I16Vec4
fn wwxx(self) -> I16Vec4
fn wwxy(self) -> I16Vec4
fn wwxz(self) -> I16Vec4
fn wwxw(self) -> I16Vec4
fn wwyx(self) -> I16Vec4
fn wwyy(self) -> I16Vec4
fn wwyz(self) -> I16Vec4
fn wwyw(self) -> I16Vec4
fn wwzx(self) -> I16Vec4
fn wwzy(self) -> I16Vec4
fn wwzz(self) -> I16Vec4
fn wwzw(self) -> I16Vec4
fn wwwx(self) -> I16Vec4
fn wwwy(self) -> I16Vec4
fn wwwz(self) -> I16Vec4
fn wwww(self) -> I16Vec4
impl Copy for I16Vec4
impl Eq for I16Vec4
impl Pod for I16Vec4
impl StructuralPartialEq for I16Vec4
Auto Trait Implementations§
impl Freeze for I16Vec4
impl RefUnwindSafe for I16Vec4
impl Send for I16Vec4
impl Sync for I16Vec4
impl Unpin for I16Vec4
impl UnwindSafe for I16Vec4
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
bits
as &Self
.source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request