Struct load_image::export::rgb::RGBA [−][src]
#[repr(C)]pub struct RGBA<ComponentType, AlphaComponentType = ComponentType> { pub r: ComponentType, pub g: ComponentType, pub b: ComponentType, pub a: AlphaComponentType, }
Expand description
The RGBA pixel
The component type can be u8
(aliased as RGBA8
), u16
(aliased as RGBA16
),
or any other type (but simple copyable types are recommended.)
You can specify a different type for alpha, but it’s only for special cases
(e.g. if you use a newtype like RGBA<LinearLight<u16>, u16>
).
Fields
r: ComponentType
Red
g: ComponentType
Green
b: ComponentType
Blue
a: AlphaComponentType
Alpha
Implementations
impl<T, A> RGBA<T, A> where
T: Copy,
A: Clone,
[src]
impl<T, A> RGBA<T, A> where
T: Copy,
A: Clone,
[src]Trait Implementations
impl<T, A> AddAssign<RGBA<T, A>> for RGBA<T, A> where
T: Add<T, Output = T> + Copy,
A: Add<A, Output = A> + Copy,
[src]
impl<T, A> AddAssign<RGBA<T, A>> for RGBA<T, A> where
T: Add<T, Output = T> + Copy,
A: Add<A, Output = A> + Copy,
[src]px + px
pub fn add_assign(&mut self, other: RGBA<T, A>)
[src]
pub fn add_assign(&mut self, other: RGBA<T, A>)
[src]Performs the +=
operation. Read more
impl<T> AddAssign<T> for RGBA<T, T> where
T: Copy + Add<T, Output = T>,
[src]
impl<T> AddAssign<T> for RGBA<T, T> where
T: Copy + Add<T, Output = T>,
[src]px + 1
pub fn add_assign(&mut self, r: T)
[src]
pub fn add_assign(&mut self, r: T)
[src]Performs the +=
operation. Read more
impl<T> AsPixels<RGBA<T, T>> for [T]
[src]
impl<T> AsPixels<RGBA<T, T>> for [T]
[src]impl<ComponentType, AlphaComponentType> Clone for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Clone,
AlphaComponentType: Clone,
[src]
impl<ComponentType, AlphaComponentType> Clone for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Clone,
AlphaComponentType: Clone,
[src]impl<T, B> ComponentMap<RGBA<B, B>, T, B> for RGBA<T, T> where
T: Copy,
[src]
impl<T, B> ComponentMap<RGBA<B, B>, T, B> for RGBA<T, T> where
T: Copy,
[src]impl<T> ComponentSlice<T> for RGBA<T, T>
[src]
impl<T> ComponentSlice<T> for RGBA<T, T>
[src]impl<ComponentType, AlphaComponentType> Debug for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Debug,
AlphaComponentType: Debug,
[src]
impl<ComponentType, AlphaComponentType> Debug for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Debug,
AlphaComponentType: Debug,
[src]impl<ComponentType, AlphaComponentType> Default for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Default,
AlphaComponentType: Default,
[src]
impl<ComponentType, AlphaComponentType> Default for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Default,
AlphaComponentType: Default,
[src]impl<T> DivAssign<T> for RGBA<T, T> where
T: Copy + Div<T, Output = T>,
[src]
impl<T> DivAssign<T> for RGBA<T, T> where
T: Copy + Div<T, Output = T>,
[src]px * 1
pub fn div_assign(&mut self, r: T)
[src]
pub fn div_assign(&mut self, r: T)
[src]Performs the /=
operation. Read more
impl<T> FromIterator<T> for RGBA<T, T>
[src]
impl<T> FromIterator<T> for RGBA<T, T>
[src]pub fn from_iter<I>(into_iter: I) -> RGBA<T, T> where
I: IntoIterator<Item = T>,
[src]
pub fn from_iter<I>(into_iter: I) -> RGBA<T, T> where
I: IntoIterator<Item = T>,
[src]Takes exactly 4 elements from the iterator and creates a new instance. Panics if there are fewer elements in the iterator.
impl<ComponentType, AlphaComponentType> Hash for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Hash,
AlphaComponentType: Hash,
[src]
impl<ComponentType, AlphaComponentType> Hash for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Hash,
AlphaComponentType: Hash,
[src]impl<T> MulAssign<T> for RGBA<T, T> where
T: Copy + Mul<T, Output = T>,
[src]
impl<T> MulAssign<T> for RGBA<T, T> where
T: Copy + Mul<T, Output = T>,
[src]px * 1
pub fn mul_assign(&mut self, r: T)
[src]
pub fn mul_assign(&mut self, r: T)
[src]Performs the *=
operation. Read more
impl<ComponentType, AlphaComponentType> Ord for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Ord,
AlphaComponentType: Ord,
[src]
impl<ComponentType, AlphaComponentType> Ord for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Ord,
AlphaComponentType: Ord,
[src]#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]Compares and returns the maximum of two values. Read more
impl<ComponentType, AlphaComponentType> PartialEq<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType> where
ComponentType: PartialEq<ComponentType>,
AlphaComponentType: PartialEq<AlphaComponentType>,
[src]
impl<ComponentType, AlphaComponentType> PartialEq<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType> where
ComponentType: PartialEq<ComponentType>,
AlphaComponentType: PartialEq<AlphaComponentType>,
[src]impl<ComponentType, AlphaComponentType> PartialOrd<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType> where
ComponentType: PartialOrd<ComponentType>,
AlphaComponentType: PartialOrd<AlphaComponentType>,
[src]
impl<ComponentType, AlphaComponentType> PartialOrd<RGBA<ComponentType, AlphaComponentType>> for RGBA<ComponentType, AlphaComponentType> where
ComponentType: PartialOrd<ComponentType>,
AlphaComponentType: PartialOrd<AlphaComponentType>,
[src]pub fn partial_cmp(
&self,
other: &RGBA<ComponentType, AlphaComponentType>
) -> Option<Ordering>
[src]
pub fn partial_cmp(
&self,
other: &RGBA<ComponentType, AlphaComponentType>
) -> Option<Ordering>
[src]This method returns an ordering between self
and other
values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than (for self
and other
) and is used by the <
operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl<T, A> SubAssign<RGBA<T, A>> for RGBA<T, A> where
T: Sub<T, Output = T> + Copy,
A: Sub<A, Output = A> + Copy,
[src]
impl<T, A> SubAssign<RGBA<T, A>> for RGBA<T, A> where
T: Sub<T, Output = T> + Copy,
A: Sub<A, Output = A> + Copy,
[src]px - px
pub fn sub_assign(&mut self, other: RGBA<T, A>)
[src]
pub fn sub_assign(&mut self, other: RGBA<T, A>)
[src]Performs the -=
operation. Read more
impl<T> SubAssign<T> for RGBA<T, T> where
T: Copy + Sub<T, Output = T>,
[src]
impl<T> SubAssign<T> for RGBA<T, T> where
T: Copy + Sub<T, Output = T>,
[src]px - 1
pub fn sub_assign(&mut self, r: T)
[src]
pub fn sub_assign(&mut self, r: T)
[src]Performs the -=
operation. Read more
impl<T, A> Sum<RGBA<T, A>> for RGBA<T, A> where
T: Default + Add<T, Output = T>,
A: Default + Add<A, Output = A>,
[src]
impl<T, A> Sum<RGBA<T, A>> for RGBA<T, A> where
T: Default + Add<T, Output = T>,
A: Default + Add<A, Output = A>,
[src]impl<ComponentType, AlphaComponentType> Copy for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Copy,
AlphaComponentType: Copy,
[src]
ComponentType: Copy,
AlphaComponentType: Copy,
impl<ComponentType, AlphaComponentType> Eq for RGBA<ComponentType, AlphaComponentType> where
ComponentType: Eq,
AlphaComponentType: Eq,
[src]
ComponentType: Eq,
AlphaComponentType: Eq,
impl<T, A> Pod for RGBA<T, A> where
T: Pod,
A: Pod,
[src]
T: Pod,
A: Pod,
impl<ComponentType, AlphaComponentType> StructuralEq for RGBA<ComponentType, AlphaComponentType>
[src]
impl<ComponentType, AlphaComponentType> StructuralPartialEq for RGBA<ComponentType, AlphaComponentType>
[src]
Auto Trait Implementations
impl<ComponentType, AlphaComponentType> RefUnwindSafe for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: RefUnwindSafe,
ComponentType: RefUnwindSafe,
AlphaComponentType: RefUnwindSafe,
ComponentType: RefUnwindSafe,
impl<ComponentType, AlphaComponentType> Send for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Send,
ComponentType: Send,
AlphaComponentType: Send,
ComponentType: Send,
impl<ComponentType, AlphaComponentType> Sync for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Sync,
ComponentType: Sync,
AlphaComponentType: Sync,
ComponentType: Sync,
impl<ComponentType, AlphaComponentType> Unpin for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: Unpin,
ComponentType: Unpin,
AlphaComponentType: Unpin,
ComponentType: Unpin,
impl<ComponentType, AlphaComponentType> UnwindSafe for RGBA<ComponentType, AlphaComponentType> where
AlphaComponentType: UnwindSafe,
ComponentType: UnwindSafe,
AlphaComponentType: UnwindSafe,
ComponentType: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> CallHasher for T where
T: Hash,
impl<T> CallHasher for T where
T: Hash,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more