diff --git a/implementors/core/clone/trait.Clone.js b/implementors/core/clone/trait.Clone.js index 12e562b8f..c28e88a7d 100644 --- a/implementors/core/clone/trait.Clone.js +++ b/implementors/core/clone/trait.Clone.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl Clone for Bgra"],["impl Clone for Al"],["impl Clone for D50Degree10"],["impl<T: Clone> Clone for BoxedSliceCastError<T>"],["impl<T: Clone> Clone for Okhsl<T>"],["impl<C: Clone, T: Clone> Clone for Alpha<C, T>"],["impl<Wp, T> Clone for Yxy<Wp, T>where\n T: Clone,"],["impl Clone for SliceCastError"],["impl Clone for Parameter"],["impl Clone for D50"],["impl Clone for F11"],["impl Clone for Srgb"],["impl Clone for D55Degree10"],["impl<Wp, T> Clone for Lchuv<Wp, T>where\n T: Clone,"],["impl<T: Clone> Clone for VecCastError<T>"],["impl<S, T> Clone for Luma<S, T>where\n T: Clone,"],["impl<Wp, T> Clone for Lch<Wp, T>where\n T: Clone,"],["impl Clone for Parameters"],["impl Clone for Equation"],["impl<S, T> Clone for Hwb<S, T>where\n T: Clone,"],["impl Clone for Equations"],["impl<S, T> Clone for Rgb<S, T>where\n T: Clone,"],["impl<T: Clone> Clone for Okhwb<T>"],["impl Clone for C"],["impl<S, T> Clone for Hsl<S, T>where\n T: Clone,"],["impl<N: Clone + Number> Clone for GammaFn<N>"],["impl Clone for B"],["impl Clone for D65"],["impl<T: Clone> Clone for Oklch<T>"],["impl Clone for D55"],["impl Clone for Argb"],["impl<Wp, T> Clone for Luv<Wp, T>where\n T: Clone,"],["impl Clone for E"],["impl Clone for LinearFn"],["impl Clone for F7"],["impl Clone for D75Degree10"],["impl<Wp, T> Clone for Lab<Wp, T>where\n T: Clone,"],["impl<T: Clone> Clone for Okhsv<T>"],["impl<T: Clone> Clone for LabHue<T>"],["impl<T: Clone> Clone for Oklab<T>"],["impl Clone for F2p2"],["impl<C: Clone + Premultiply> Clone for PreAlpha<C>where\n C::Scalar: Clone,"],["impl<T: Clone> Clone for OklabHue<T>"],["impl Clone for Any"],["impl<S: Clone, N: Clone + Number> Clone for Gamma<S, N>"],["impl Clone for VecCastErrorKind"],["impl Clone for Rgba"],["impl Clone for D75"],["impl<S, T> Clone for Hsv<S, T>where\n T: Clone,"],["impl Clone for A"],["impl<T: Clone> Clone for LuvHue<T>"],["impl Clone for Abgr"],["impl<Wp, T> Clone for Xyz<Wp, T>where\n T: Clone,"],["impl<O, P> Clone for Packed<O, P>where\n P: Clone,"],["impl<T: Clone> Clone for RgbHue<T>"],["impl Clone for La"],["impl<Wp, T> Clone for Hsluv<Wp, T>where\n T: Clone,"],["impl<S: Clone> Clone for Linear<S>"],["impl Clone for D65Degree10"],["impl Clone for F2"]] +"palette":[["impl Clone for Bgra"],["impl Clone for Al"],["impl Clone for D50Degree10"],["impl<T: Clone> Clone for BoxedSliceCastError<T>"],["impl<T: Clone> Clone for Okhsl<T>"],["impl<T: Clone> Clone for Oklab<T>"],["impl<C: Clone, T: Clone> Clone for Alpha<C, T>"],["impl<Wp, T> Clone for Yxy<Wp, T>where\n T: Clone,"],["impl Clone for SliceCastError"],["impl Clone for Parameter"],["impl Clone for D50"],["impl Clone for F11"],["impl Clone for Srgb"],["impl Clone for D55Degree10"],["impl<Wp, T> Clone for Lchuv<Wp, T>where\n T: Clone,"],["impl<T: Clone> Clone for Oklch<T>"],["impl<T: Clone> Clone for Okhsv<T>"],["impl<T: Clone> Clone for VecCastError<T>"],["impl<S, T> Clone for Luma<S, T>where\n T: Clone,"],["impl<Wp, T> Clone for Lch<Wp, T>where\n T: Clone,"],["impl Clone for Parameters"],["impl Clone for Equation"],["impl<S, T> Clone for Hwb<S, T>where\n T: Clone,"],["impl Clone for Equations"],["impl<S, T> Clone for Rgb<S, T>where\n T: Clone,"],["impl<T: Clone> Clone for Okhwb<T>"],["impl Clone for C"],["impl<S, T> Clone for Hsl<S, T>where\n T: Clone,"],["impl<N: Clone + Number> Clone for GammaFn<N>"],["impl Clone for B"],["impl Clone for D65"],["impl Clone for D55"],["impl Clone for Argb"],["impl<Wp, T> Clone for Luv<Wp, T>where\n T: Clone,"],["impl Clone for E"],["impl Clone for LinearFn"],["impl Clone for F7"],["impl Clone for D75Degree10"],["impl<Wp, T> Clone for Lab<Wp, T>where\n T: Clone,"],["impl<T: Clone> Clone for LabHue<T>"],["impl Clone for F2p2"],["impl<C: Clone + Premultiply> Clone for PreAlpha<C>where\n C::Scalar: Clone,"],["impl<T: Clone> Clone for OklabHue<T>"],["impl Clone for Any"],["impl<S: Clone, N: Clone + Number> Clone for Gamma<S, N>"],["impl Clone for VecCastErrorKind"],["impl Clone for Rgba"],["impl Clone for D75"],["impl<S, T> Clone for Hsv<S, T>where\n T: Clone,"],["impl Clone for A"],["impl<T: Clone> Clone for LuvHue<T>"],["impl Clone for Abgr"],["impl<Wp, T> Clone for Xyz<Wp, T>where\n T: Clone,"],["impl<O, P> Clone for Packed<O, P>where\n P: Clone,"],["impl<T: Clone> Clone for RgbHue<T>"],["impl Clone for La"],["impl<Wp, T> Clone for Hsluv<Wp, T>where\n T: Clone,"],["impl<S: Clone> Clone for Linear<S>"],["impl Clone for D65Degree10"],["impl Clone for F2"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/convert/trait.AsMut.js b/implementors/core/convert/trait.AsMut.js index b7a85ff7a..13539ab50 100644 --- a/implementors/core/convert/trait.AsMut.js +++ b/implementors/core/convert/trait.AsMut.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>"],["impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>"],["impl<T> AsMut<[T; 3]> for Oklch<T>"],["impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>"],["impl<S> AsMut<Luma<S, u128>> for u128"],["impl<Wp, T> AsMut<[T]> for Luv<Wp, T>"],["impl<S, T> AsMut<[T; 3]> for Hwb<S, T>"],["impl<T> AsMut<[T]> for Okhsl<T>"],["impl<T> AsMut<[T; 3]> for Okhsl<T>"],["impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]"],["impl<O, P> AsMut<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>"],["impl<S> AsMut<Luma<S, f64>> for f64"],["impl<C, T, const N: usize> AsMut<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>"],["impl<S, T> AsMut<[T; 1]> for Luma<S, T>"],["impl<T> AsMut<Okhwb<T>> for [T; 3]"],["impl<T> AsMut<[T]> for Oklab<T>"],["impl<C: Premultiply, const N: usize> AsMut<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<C, T, const N: usize> AsMut<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S, T> AsMut<Rgb<S, T>> for [T; 3]"],["impl<S> AsMut<Luma<S, u32>> for u32"],["impl<S, T> AsMut<Luma<S, T>> for [T; 1]"],["impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]"],["impl<S> AsMut<Luma<S, f32>> for f32"],["impl<S, T> AsMut<Hsv<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>"],["impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]"],["impl<O> AsMut<Packed<O, u8>> for u8"],["impl<S, T> AsMut<[T; 3]> for Hsv<S, T>"],["impl<S, T> AsMut<Hsl<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]"],["impl<T> AsMut<Okhsl<T>> for [T; 3]"],["impl<Wp, T> AsMut<[T]> for Lch<Wp, T>"],["impl<C: Premultiply, const N: usize> AsMut<[<C as Premultiply>::Scalar]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T> AsMut<Hwb<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T]> for Lab<Wp, T>"],["impl<O> AsMut<Packed<O, u128>> for u128"],["impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>"],["impl<T> AsMut<Oklch<T>> for [T; 3]"],["impl<T> AsMut<Oklab<T>> for [T; 3]"],["impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>"],["impl<S, T> AsMut<[T]> for Hwb<S, T>"],["impl<T> AsMut<[T]> for Okhsv<T>"],["impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>"],["impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]"],["impl<O, T, const N: usize> AsMut<Packed<O, [T; N]>> for [T; N]"],["impl<S> AsMut<Luma<S, u64>> for u64"],["impl<C, T, const N: usize> AsMut<[T]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T> AsMut<[T]> for Oklch<T>"],["impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]"],["impl<O, T, const N: usize> AsMut<[T; N]> for Packed<O, [T; N]>"],["impl<S, T> AsMut<[T]> for Luma<S, T>"],["impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>"],["impl<O> AsMut<Packed<O, u16>> for u16"],["impl<O> AsMut<Packed<O, u32>> for u32"],["impl<T> AsMut<[T; 3]> for Okhwb<T>"],["impl<S, T> AsMut<T> for Luma<S, T>"],["impl<S, T> AsMut<[T; 3]> for Rgb<S, T>"],["impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>"],["impl<S, T> AsMut<[T]> for Rgb<S, T>"],["impl<S> AsMut<Luma<S, u8>> for u8"],["impl<S, T> AsMut<[T; 3]> for Hsl<S, T>"],["impl<T> AsMut<[T; 3]> for Oklab<T>"],["impl<T> AsMut<[T; 3]> for Okhsv<T>"],["impl<O, T, const N: usize> AsMut<[T]> for Packed<O, [T; N]>"],["impl<C: Premultiply, const N: usize> AsMut<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S> AsMut<Luma<S, u16>> for u16"],["impl<S, T> AsMut<[T]> for Hsl<S, T>"],["impl<O> AsMut<Packed<O, u64>> for u64"],["impl<T> AsMut<[T]> for Okhwb<T>"],["impl<T> AsMut<Okhsv<T>> for [T; 3]"],["impl<S, T> AsMut<[T]> for Hsv<S, T>"]] +"palette":[["impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>"],["impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>"],["impl<T> AsMut<[T; 3]> for Oklch<T>"],["impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>"],["impl<S> AsMut<Luma<S, u128>> for u128"],["impl<Wp, T> AsMut<[T]> for Luv<Wp, T>"],["impl<S, T> AsMut<[T; 3]> for Hwb<S, T>"],["impl<T> AsMut<[T]> for Okhsl<T>"],["impl<T> AsMut<[T; 3]> for Okhsl<T>"],["impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]"],["impl<O, P> AsMut<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>"],["impl<S> AsMut<Luma<S, f64>> for f64"],["impl<C, T, const N: usize> AsMut<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>"],["impl<S, T> AsMut<[T; 1]> for Luma<S, T>"],["impl<T> AsMut<Okhwb<T>> for [T; 3]"],["impl<T> AsMut<[T]> for Oklab<T>"],["impl<C: Premultiply, const N: usize> AsMut<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<C, T, const N: usize> AsMut<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S, T> AsMut<Rgb<S, T>> for [T; 3]"],["impl<S> AsMut<Luma<S, u32>> for u32"],["impl<S, T> AsMut<Luma<S, T>> for [T; 1]"],["impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]"],["impl<S> AsMut<Luma<S, f32>> for f32"],["impl<S, T> AsMut<Hsv<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>"],["impl<S, T> AsMut<T> for Luma<S, T>"],["impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]"],["impl<O> AsMut<Packed<O, u8>> for u8"],["impl<S, T> AsMut<[T; 3]> for Hsv<S, T>"],["impl<S, T> AsMut<Hsl<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]"],["impl<T> AsMut<Okhsl<T>> for [T; 3]"],["impl<Wp, T> AsMut<[T]> for Lch<Wp, T>"],["impl<C: Premultiply, const N: usize> AsMut<[<C as Premultiply>::Scalar]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T> AsMut<Hwb<S, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T]> for Lab<Wp, T>"],["impl<O> AsMut<Packed<O, u128>> for u128"],["impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>"],["impl<T> AsMut<Oklch<T>> for [T; 3]"],["impl<T> AsMut<Oklab<T>> for [T; 3]"],["impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]"],["impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>"],["impl<S, T> AsMut<[T]> for Hwb<S, T>"],["impl<T> AsMut<[T]> for Okhsv<T>"],["impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>"],["impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]"],["impl<O, T, const N: usize> AsMut<Packed<O, [T; N]>> for [T; N]"],["impl<S> AsMut<Luma<S, u64>> for u64"],["impl<C, T, const N: usize> AsMut<[T]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T> AsMut<[T]> for Oklch<T>"],["impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]"],["impl<O, T, const N: usize> AsMut<[T; N]> for Packed<O, [T; N]>"],["impl<S, T> AsMut<[T]> for Luma<S, T>"],["impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>"],["impl<O> AsMut<Packed<O, u16>> for u16"],["impl<O> AsMut<Packed<O, u32>> for u32"],["impl<T> AsMut<[T; 3]> for Okhwb<T>"],["impl<S, T> AsMut<[T; 3]> for Rgb<S, T>"],["impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>"],["impl<S, T> AsMut<[T]> for Rgb<S, T>"],["impl<S> AsMut<Luma<S, u8>> for u8"],["impl<S, T> AsMut<[T; 3]> for Hsl<S, T>"],["impl<T> AsMut<[T; 3]> for Oklab<T>"],["impl<T> AsMut<[T; 3]> for Okhsv<T>"],["impl<O, T, const N: usize> AsMut<[T]> for Packed<O, [T; N]>"],["impl<C: Premultiply, const N: usize> AsMut<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S> AsMut<Luma<S, u16>> for u16"],["impl<S, T> AsMut<[T]> for Hsl<S, T>"],["impl<O> AsMut<Packed<O, u64>> for u64"],["impl<T> AsMut<[T]> for Okhwb<T>"],["impl<T> AsMut<Okhsv<T>> for [T; 3]"],["impl<S, T> AsMut<[T]> for Hsv<S, T>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/convert/trait.AsRef.js b/implementors/core/convert/trait.AsRef.js index bb0605c8d..2acdd0ae4 100644 --- a/implementors/core/convert/trait.AsRef.js +++ b/implementors/core/convert/trait.AsRef.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]"],["impl<S> AsRef<Luma<S, u64>> for u64"],["impl<O, T, const N: usize> AsRef<[T]> for Packed<O, [T; N]>"],["impl<Wp, T> AsRef<[T]> for Lch<Wp, T>"],["impl<T> AsRef<[T; 3]> for Okhwb<T>"],["impl<T> AsRef<[T]> for Okhsl<T>"],["impl<O, T, const N: usize> AsRef<[T; N]> for Packed<O, [T; N]>"],["impl<T> AsRef<[T; 3]> for Okhsv<T>"],["impl<T> AsRef<[T]> for Oklch<T>"],["impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>"],["impl<O> AsRef<Packed<O, u32>> for u32"],["impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 3]> for Hsl<S, T>"],["impl<T> AsRef<[T]> for Okhsv<T>"],["impl<S> AsRef<Luma<S, f64>> for f64"],["impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>"],["impl<S, T> AsRef<[T; 3]> for Hwb<S, T>"],["impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>"],["impl<S, T> AsRef<[T]> for Hsv<S, T>"],["impl<S> AsRef<Luma<S, f32>> for f32"],["impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T]> for Hsl<S, T>"],["impl<T> AsRef<[T; 3]> for Oklch<T>"],["impl<S, T> AsRef<[T]> for Rgb<S, T>"],["impl<S> AsRef<Luma<S, u32>> for u32"],["impl<S> AsRef<Luma<S, u8>> for u8"],["impl<S, T> AsRef<[T; 3]> for Rgb<S, T>"],["impl<S> AsRef<Luma<S, u128>> for u128"],["impl<S, T> AsRef<Rgb<S, T>> for [T; 3]"],["impl<S, T> AsRef<[T]> for Hwb<S, T>"],["impl<S, T> AsRef<Hsv<S, T>> for [T; 3]"],["impl<O> AsRef<Packed<O, u16>> for u16"],["impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>"],["impl<O> AsRef<Packed<O, u8>> for u8"],["impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>"],["impl<S, T> AsRef<Hsl<S, T>> for [T; 3]"],["impl<T> AsRef<Oklab<T>> for [T; 3]"],["impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>"],["impl<T> AsRef<[T]> for Okhwb<T>"],["impl<T> AsRef<Okhwb<T>> for [T; 3]"],["impl<T> AsRef<[T; 3]> for Okhsl<T>"],["impl<O> AsRef<Packed<O, u128>> for u128"],["impl<C, T, const N: usize> AsRef<[T]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<Wp, T> AsRef<[T]> for Luv<Wp, T>"],["impl<C, T, const N: usize> AsRef<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S, T> AsRef<T> for Luma<S, T>"],["impl<C, T, const N: usize> AsRef<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<C: Premultiply, const N: usize> AsRef<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<O> AsRef<Packed<O, u64>> for u64"],["impl<S, T> AsRef<[T]> for Luma<S, T>"],["impl<O, P> AsRef<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>"],["impl<T> AsRef<Okhsv<T>> for [T; 3]"],["impl<T> AsRef<[T]> for Oklab<T>"],["impl<Wp, T> AsRef<[T]> for Lab<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>"],["impl<S, T> AsRef<Hwb<S, T>> for [T; 3]"],["impl<O, T, const N: usize> AsRef<Packed<O, [T; N]>> for [T; N]"],["impl<S> AsRef<Luma<S, u16>> for u16"],["impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 3]> for Hsv<S, T>"],["impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]"],["impl<T> AsRef<[T; 3]> for Oklab<T>"],["impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>"],["impl<C: Premultiply, const N: usize> AsRef<[<C as Premultiply>::Scalar]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> AsRef<Okhsl<T>> for [T; 3]"],["impl<C: Premultiply, const N: usize> AsRef<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 1]> for Luma<S, T>"],["impl<S, T> AsRef<Luma<S, T>> for [T; 1]"],["impl<T> AsRef<Oklch<T>> for [T; 3]"],["impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]"]] +"palette":[["impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]"],["impl<S> AsRef<Luma<S, u64>> for u64"],["impl<O, T, const N: usize> AsRef<[T]> for Packed<O, [T; N]>"],["impl<Wp, T> AsRef<[T]> for Lch<Wp, T>"],["impl<T> AsRef<[T; 3]> for Okhwb<T>"],["impl<T> AsRef<[T]> for Okhsl<T>"],["impl<O, T, const N: usize> AsRef<[T; N]> for Packed<O, [T; N]>"],["impl<T> AsRef<[T; 3]> for Okhsv<T>"],["impl<T> AsRef<[T]> for Oklch<T>"],["impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>"],["impl<O> AsRef<Packed<O, u32>> for u32"],["impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 3]> for Hsl<S, T>"],["impl<T> AsRef<[T]> for Okhsv<T>"],["impl<S> AsRef<Luma<S, f64>> for f64"],["impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>"],["impl<S, T> AsRef<[T; 3]> for Hwb<S, T>"],["impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>"],["impl<S, T> AsRef<[T]> for Hsv<S, T>"],["impl<S> AsRef<Luma<S, f32>> for f32"],["impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T]> for Hsl<S, T>"],["impl<T> AsRef<[T; 3]> for Oklch<T>"],["impl<S, T> AsRef<[T]> for Rgb<S, T>"],["impl<S> AsRef<Luma<S, u32>> for u32"],["impl<S> AsRef<Luma<S, u8>> for u8"],["impl<S, T> AsRef<[T; 3]> for Rgb<S, T>"],["impl<S> AsRef<Luma<S, u128>> for u128"],["impl<S, T> AsRef<Rgb<S, T>> for [T; 3]"],["impl<S, T> AsRef<[T]> for Hwb<S, T>"],["impl<S, T> AsRef<Hsv<S, T>> for [T; 3]"],["impl<O> AsRef<Packed<O, u16>> for u16"],["impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>"],["impl<O> AsRef<Packed<O, u8>> for u8"],["impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>"],["impl<S, T> AsRef<Hsl<S, T>> for [T; 3]"],["impl<S, T> AsRef<T> for Luma<S, T>"],["impl<T> AsRef<Oklab<T>> for [T; 3]"],["impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>"],["impl<T> AsRef<[T]> for Okhwb<T>"],["impl<T> AsRef<Okhwb<T>> for [T; 3]"],["impl<T> AsRef<[T; 3]> for Okhsl<T>"],["impl<O> AsRef<Packed<O, u128>> for u128"],["impl<C, T, const N: usize> AsRef<[T]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<Wp, T> AsRef<[T]> for Luv<Wp, T>"],["impl<C, T, const N: usize> AsRef<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<C, T, const N: usize> AsRef<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<C: Premultiply, const N: usize> AsRef<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<O> AsRef<Packed<O, u64>> for u64"],["impl<S, T> AsRef<[T]> for Luma<S, T>"],["impl<O, P> AsRef<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>"],["impl<T> AsRef<Okhsv<T>> for [T; 3]"],["impl<T> AsRef<[T]> for Oklab<T>"],["impl<Wp, T> AsRef<[T]> for Lab<Wp, T>"],["impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>"],["impl<S, T> AsRef<Hwb<S, T>> for [T; 3]"],["impl<O, T, const N: usize> AsRef<Packed<O, [T; N]>> for [T; N]"],["impl<S> AsRef<Luma<S, u16>> for u16"],["impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 3]> for Hsv<S, T>"],["impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]"],["impl<T> AsRef<[T; 3]> for Oklab<T>"],["impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>"],["impl<C: Premultiply, const N: usize> AsRef<[<C as Premultiply>::Scalar]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> AsRef<Okhsl<T>> for [T; 3]"],["impl<C: Premultiply, const N: usize> AsRef<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]"],["impl<S, T> AsRef<[T; 1]> for Luma<S, T>"],["impl<S, T> AsRef<Luma<S, T>> for [T; 1]"],["impl<T> AsRef<Oklch<T>> for [T; 3]"],["impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/convert/trait.From.js b/implementors/core/convert/trait.From.js index b856e3839..d6e7353c9 100644 --- a/implementors/core/convert/trait.From.js +++ b/implementors/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<T, V, const N: usize> From<[Alpha<Oklab<T>, T>; N]> for Alpha<Oklab<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]"],["impl<T> From<Box<Oklch<T>, Global>> for Box<[T; 3]>"],["impl<'a, T> From<&'a Okhwb<T>> for &'a [T; 3]"],["impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>"],["impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>"],["impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)"],["impl<'a, O> From<&'a Packed<O, u128>> for &'a u128"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Rgb<S, T>"],["impl<'a, T> From<&'a mut Okhsl<T>> for &'a mut [T; 3]"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Lab<Wp, V>>> for [PreAlpha<Lab<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Lab<Wp, T>: Premultiply<Scalar = T>,\n Lab<Wp, V>: Premultiply<Scalar = V>,"],["impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>"],["impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)"],["impl<Wp, T> From<Box<Lchuv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32"],["impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where\n U: FromStimulus<T>,\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<T> From<Okhsl<T>> for [T; 3]"],["impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a Packed<O, u8>> for &'a u8"],["impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T]"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>"],["impl<Wp, T> From<Box<Lch<Wp, T>, Global>> for Box<[T; 3]>"],["impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]"],["impl<O, P> From<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, U> From<Rgb<Srgb, T>> for LinSrgba<U>where\n U: Stimulus,\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>"],["impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>"],["impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T> From<[T; 3]> for Hsv<S, T>"],["impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]"],["impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]"],["impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where\n Self: Premultiply<Scalar = T>,"],["impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)"],["impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)"],["impl<T> From<Oklab<T>> for [T; 3]"],["impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut u32> for &'a mut Luma<S, u32>where\n u32: AsMut<Luma<S, u32>>,"],["impl<O> From<Packed<O, u128>> for u128"],["impl<'a, S> From<&'a mut u16> for &'a mut Luma<S, u16>where\n u16: AsMut<Luma<S, u16>>,"],["impl<'a, O, T, const N: usize> From<&'a [T; N]> for &'a Packed<O, [T; N]>"],["impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Luv<Wp, T>> for [T; 3]"],["impl<'a, S> From<&'a mut u8> for &'a mut Luma<S, u8>where\n u8: AsMut<Luma<S, u8>>,"],["impl<T, V, const N: usize> From<Okhwb<V>> for [Okhwb<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where\n C: Premultiply,"],["impl From<ParseIntError> for FromHexError"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Xyz<Wp, V>>> for [PreAlpha<Xyz<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Xyz<Wp, T>: Premultiply<Scalar = T>,\n Xyz<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a u16> for &'a Luma<S, u16>where\n u16: AsRef<Luma<S, u16>>,"],["impl<T> From<Oklab<T>> for (T, T, T)"],["impl<T, V, const N: usize> From<[Alpha<Oklch<T>, T>; N]> for Alpha<Oklch<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<[PreAlpha<Oklab<T>>; N]> for PreAlpha<Oklab<V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Oklab<T>: Premultiply<Scalar = T>,\n Oklab<V>: Premultiply<Scalar = V>,"],["impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S> From<&'a Luma<S, u8>> for &'a u8"],["impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]"],["impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut f64> for &'a mut Luma<S, f64>where\n f64: AsMut<Luma<S, f64>>,"],["impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]"],["impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>"],["impl<S, T, V, const N: usize> From<PreAlpha<Rgb<S, V>>> for [PreAlpha<Rgb<S, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Rgb<S, T>: Premultiply<Scalar = T>,\n Rgb<S, V>: Premultiply<Scalar = V>,"],["impl<Wp, T> From<Box<Yxy<Wp, T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Luv<Wp, V>>> for [PreAlpha<Luv<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Luv<Wp, T>: Premultiply<Scalar = T>,\n Luv<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a Luma<S, u32>> for &'a u32"],["impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where\n O: ComponentOrder<Lumaa<S, T>, P>,"],["impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)"],["impl<'a, T> From<&'a mut Okhsl<T>> for &'a mut [T]"],["impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut Luma<S, f64>> for &'a mut f64"],["impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>"],["impl<'a, T> From<&'a Oklab<T>> for &'a [T; 3]"],["impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>"],["impl<O, T, const N: usize> From<[T; N]> for Packed<O, [T; N]>"],["impl<'a, O, P> From<&'a P> for &'a Packed<O, P>where\n P: AsRef<Packed<O, P>>,\n Packed<O, P>: UintCast<Uint = P>,"],["impl<S, T> From<Box<Hsl<S, T>, Global>> for Box<[T; 3]>"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>"],["impl<C: Premultiply, const N: usize> From<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> From<T> for LabHue<T>"],["impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>"],["impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where\n O: ComponentOrder<Lumaa<S, u8>, P>,"],["impl From<OklabHue<f64>> for f64"],["impl<S, T> From<Box<Rgb<S, T>, Global>> for Box<[T; 3]>"],["impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)"],["impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)"],["impl<T> From<T> for RgbHue<T>"],["impl<'a, S> From<&'a mut u64> for &'a mut Luma<S, u64>where\n u64: AsMut<Luma<S, u64>>,"],["impl<S, T> From<Rgb<S, T>> for [T; 3]"],["impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T, V, const N: usize> From<Luma<S, V>> for [Luma<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]"],["impl<'a, S> From<&'a mut Luma<S, u64>> for &'a mut u64"],["impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]"],["impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>"],["impl<'a, T> From<&'a mut Okhwb<T>> for &'a mut [T; 3]"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>"],["impl<S, T, V, const N: usize> From<PreAlpha<Luma<S, V>>> for [PreAlpha<Luma<S, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Luma<S, T>: Premultiply<Scalar = T>,\n Luma<S, V>: Premultiply<Scalar = V>,"],["impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<'a, O, T, const N: usize> From<&'a mut [T; N]> for &'a mut Packed<O, [T; N]>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>"],["impl<T> From<Box<Oklab<T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)"],["impl<'a, O> From<&'a mut Packed<O, u8>> for &'a mut u8"],["impl<O, T, const N: usize> From<Box<Packed<O, [T; N]>, Global>> for Box<[T; N]>"],["impl<T, U> From<Rgb<Srgb, T>> for LinSrgb<U>where\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>"],["impl<T> From<Box<Okhwb<T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl From<&'static str> for FromHexError"],["impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>"],["impl<S, T> From<Box<Luma<S, T>, Global>> for Box<[T; 1]>"],["impl From<RgbHue<f32>> for f32"],["impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>"],["impl<'a, S> From<&'a mut u128> for &'a mut Luma<S, u128>where\n u128: AsMut<Luma<S, u128>>,"],["impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>"],["impl<S> From<Luma<S, u8>> for u16"],["impl<S, T, V, const N: usize> From<[Luma<S, T>; N]> for Luma<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<Wp, T> From<Box<Lab<Wp, T>, Global>> for Box<[T; 3]>"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>"],["impl From<LuvHue<u8>> for u8"],["impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]"],["impl<S> From<u32> for Rgb<S, u8>"],["impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>where\n T: Zero + MinMax,"],["impl<S, T> From<(T,)> for Luma<S, T>"],["impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)"],["impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T, V, const N: usize> From<[Oklab<T>; N]> for Oklab<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>"],["impl<S> From<Luma<S, f64>> for f64"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>"],["impl<'a, S> From<&'a Luma<S, f32>> for &'a f32"],["impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]"],["impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T]"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>"],["impl<S> From<u32> for Rgba<S, u8>"],["impl<S> From<Rgb<S, u8>> for u32"],["impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>"],["impl<'a, T> From<&'a [T; 3]> for &'a Oklab<T>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>"],["impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]"],["impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>"],["impl<'a, S> From<&'a Luma<S, f64>> for &'a f64"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhsl<T>>"],["impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where\n U: FromStimulus<T>,\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl From<OklabHue<f32>> for f32"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Rgb<S, T>>"],["impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)"],["impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a [T; N]> for &'a Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where\n O: ComponentOrder<Lumaa<S, T>, P>,"],["impl<Wp, T> From<Box<Xyz<Wp, T>, Global>> for Box<[T; 3]>"],["impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T; N]"],["impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgba<U>where\n U: Stimulus,\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T; 3]"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut [<C as Premultiply>::Scalar; N]> for &'a mut PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T> From<Hsl<S, T>> for [T; 3]"],["impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]"],["impl<'a, S> From<&'a f32> for &'a Luma<S, f32>where\n f32: AsRef<Luma<S, f32>>,"],["impl<T> From<(T, T, T)> for Oklab<T>"],["impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, S> From<&'a mut Luma<S, u128>> for &'a mut u128"],["impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Rgb<S, T>"],["impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)"],["impl<'a, O, P> From<&'a mut P> for &'a mut Packed<O, P>where\n P: AsMut<Packed<O, P>>,\n Packed<O, P>: UintCast<Uint = P>,"],["impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]"],["impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where\n Self: Premultiply<Scalar = T>,"],["impl<'a, O> From<&'a Packed<O, u32>> for &'a u32"],["impl<'a, T> From<&'a Okhwb<T>> for &'a [T]"],["impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>"],["impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>"],["impl<S, T> From<Box<[T; 1], Global>> for Box<Luma<S, T>>"],["impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]"],["impl<'a, C: Premultiply, const N: usize> From<&'a [<C as Premultiply>::Scalar; N]> for &'a PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]"],["impl<S> From<Alpha<Luma<S, u8>, u8>> for u16"],["impl<S> From<Luma<S, u32>> for u32"],["impl<T> From<[T; 3]> for Oklab<T>"],["impl From<LuvHue<f32>> for f32"],["impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>"],["impl<'a, S> From<&'a u8> for &'a Luma<S, u8>where\n u8: AsRef<Luma<S, u8>>,"],["impl<'a, S> From<&'a u64> for &'a Luma<S, u64>where\n u64: AsRef<Luma<S, u64>>,"],["impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>"],["impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]"],["impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where\n O: ComponentOrder<Lumaa<S, T>, P>,\n Lumaa<S, T>: From<Luma<S, T>>,"],["impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)"],["impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]"],["impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Xyz<Wp, T>>; N]> for PreAlpha<Xyz<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Xyz<Wp, T>: Premultiply<Scalar = T>,\n Xyz<Wp, V>: Premultiply<Scalar = V>,"],["impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, S> From<&'a mut Luma<S, u16>> for &'a mut u16"],["impl<O, T, const N: usize> From<Box<[T; N], Global>> for Box<Packed<O, [T; N]>>"],["impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where\n Self: Premultiply<Scalar = T>,"],["impl From<RgbHue<f64>> for f32"],["impl<S, T, V, const N: usize> From<[PreAlpha<Rgb<S, T>>; N]> for PreAlpha<Rgb<S, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Rgb<S, T>: Premultiply<Scalar = T>,\n Rgb<S, V>: Premultiply<Scalar = V>,"],["impl From<LabHue<f64>> for f32"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Lab<Wp, T>>; N]> for PreAlpha<Lab<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Lab<Wp, T>: Premultiply<Scalar = T>,\n Lab<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]"],["impl<S, T> From<[T; 3]> for Hwb<S, T>"],["impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]"],["impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<[Okhwb<T>; N]> for Okhwb<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]"],["impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T]"],["impl From<LuvHue<f64>> for f64"],["impl<'a, S, T> From<&'a [T; 1]> for &'a Luma<S, T>"],["impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]"],["impl<Wp, T> From<Lab<Wp, T>> for [T; 3]"],["impl<S, T> From<Rgb<S, T>> for (T, T, T)"],["impl<S, T> From<(T, T, T)> for Rgb<S, T>"],["impl<T> From<[T; 3]> for Okhwb<T>"],["impl<O> From<Packed<O, u16>> for u16"],["impl<T> From<[T; 3]> for Oklch<T>"],["impl<S, T> From<[T; 3]> for Rgb<S, T>"],["impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a mut Packed<O, u32>> for &'a mut u32"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklab<T>"],["impl<O> From<Packed<O, u32>> for u32"],["impl From<OklabHue<f32>> for f64"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>"],["impl<'a, S> From<&'a f64> for &'a Luma<S, f64>where\n f64: AsRef<Luma<S, f64>>,"],["impl<'a, S> From<&'a Luma<S, u16>> for &'a u16"],["impl<S, T, V, const N: usize> From<[Rgb<S, T>; N]> for Rgb<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>"],["impl<Wp, T> From<Box<Hsluv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<S, T, V, const N: usize> From<[PreAlpha<Luma<S, T>>; N]> for PreAlpha<Luma<S, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Luma<S, T>: Premultiply<Scalar = T>,\n Luma<S, V>: Premultiply<Scalar = V>,"],["impl<S> From<Luma<S, u64>> for u64"],["impl<'a, S> From<&'a mut f32> for &'a mut Luma<S, f32>where\n f32: AsMut<Luma<S, f32>>,"],["impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T> From<Hwb<S, T>> for [T; 3]"],["impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where\n C: Premultiply,"],["impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]"],["impl<Wp, T> From<[T; 3]> for Luv<Wp, T>"],["impl<'a, O> From<&'a mut Packed<O, u16>> for &'a mut u16"],["impl<'a, T> From<&'a Oklch<T>> for &'a [T]"],["impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]"],["impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Yxy<Wp, T>>; N]> for PreAlpha<Yxy<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Yxy<Wp, T>: Premultiply<Scalar = T>,\n Yxy<Wp, V>: Premultiply<Scalar = V>,"],["impl<S, T> From<[T; 3]> for Hsl<S, T>"],["impl<Wp, T> From<[T; 3]> for Lch<Wp, T>"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>"],["impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]"],["impl<C, T, const N: usize> From<Box<Alpha<C, T>, Global>> for Box<[T; N]>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]"],["impl<T> From<[T; 3]> for Okhsl<T>"],["impl<S, T, V, const N: usize> From<Rgb<S, V>> for [Rgb<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>"],["impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T; 1]"],["impl From<LabHue<f32>> for f64"],["impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T; 3]"],["impl From<LuvHue<f64>> for f32"],["impl From<RgbHue<f64>> for f64"],["impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]"],["impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<Okhsl<V>> for [Okhsl<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut Luma<S, u8>> for &'a mut u8"],["impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)"],["impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]"],["impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]"],["impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Yxy<Wp, V>>> for [PreAlpha<Yxy<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Yxy<Wp, T>: Premultiply<Scalar = T>,\n Yxy<Wp, V>: Premultiply<Scalar = V>,"],["impl From<RgbHue<u8>> for u8"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhsl<T>"],["impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]"],["impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)"],["impl<T> From<[T; 3]> for Okhsv<T>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a mut Packed<O, u64>> for &'a mut u64"],["impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>"],["impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>"],["impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S> From<&'a Luma<S, u128>> for &'a u128"],["impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>"],["impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>"],["impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]"],["impl<S, T> From<[T; 1]> for Luma<S, T>"],["impl<O, T, const N: usize> From<Packed<O, [T; N]>> for [T; N]"],["impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl From<OklabHue<f64>> for f32"],["impl<'a, O> From<&'a mut Packed<O, u128>> for &'a mut u128"],["impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T; 1]"],["impl<S, T> From<T> for Luma<S, T>"],["impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]"],["impl<Wp, T> From<Box<Luv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhwb<T>"],["impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]"],["impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)"],["impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>"],["impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T; N]"],["impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>"],["impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>"],["impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]"],["impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S> From<Luma<S, f32>> for f32"],["impl<Wp, T> From<Lch<Wp, T>> for [T; 3]"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>"],["impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]"],["impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where\n O: ComponentOrder<Rgba<S, T>, P>,\n Rgba<S, T>: From<Rgb<S, T>>,"],["impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T]"],["impl From<OklabHue<u8>> for u8"],["impl<'a, O> From<&'a Packed<O, u64>> for &'a u64"],["impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T]"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhwb<T>"],["impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]"],["impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>"],["impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)"],["impl From<LuvHue<f32>> for f64"],["impl<T, V, const N: usize> From<PreAlpha<Oklab<V>>> for [PreAlpha<Oklab<T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Oklab<T>: Premultiply<Scalar = T>,\n Oklab<V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a mut Luma<S, f32>> for &'a mut f32"],["impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhwb<T>>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>"],["impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]"],["impl From<LabHue<f32>> for f32"],["impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T; 3]"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl From<LabHue<u8>> for u8"],["impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]"],["impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<S, T> From<Box<Hsv<S, T>, Global>> for Box<[T; 3]>"],["impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a Oklab<T>> for &'a [T]"],["impl<'a, S> From<&'a mut Luma<S, u32>> for &'a mut u32"],["impl From<RgbHue<f32>> for f64"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsl<T>"],["impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where\n O: ComponentOrder<Rgba<S, u8>, P>,"],["impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T> From<Luma<S, T>> for [T; 1]"],["impl From<LabHue<f64>> for f64"],["impl<S> From<Luma<S, u128>> for u128"],["impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>"],["impl<T, V, const N: usize> From<[Okhsl<T>; N]> for Okhsl<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a Luma<S, u64>> for &'a u64"],["impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)"],["impl<'a, T> From<&'a mut Okhwb<T>> for &'a mut [T]"],["impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T]"],["impl<S> From<Luma<S, u8>> for u8"],["impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>"],["impl<T> From<Box<Okhsv<T>, Global>> for Box<[T; 3]>"],["impl<Wp, T> From<[T; 3]> for Lab<Wp, T>"],["impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T]"],["impl<T> From<Oklch<T>> for [T; 3]"],["impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>"],["impl<C: Premultiply, const N: usize> From<Box<PreAlpha<C>, Global>> for Box<[C::Scalar; N]>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where\n O: ComponentOrder<Rgba<S, T>, P>,"],["impl<'a, T> From<&'a Okhsv<T>> for &'a [T]"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>"],["impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T> From<Hsv<S, T>> for [T; 3]"],["impl<T> From<Okhsv<T>> for [T; 3]"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>"],["impl<S, T> From<Luma<S, T>> for (T,)"],["impl<C: Premultiply, const N: usize> From<Box<[<C as Premultiply>::Scalar; N], Global>> for Box<PreAlpha<C>>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> From<T> for LuvHue<T>"],["impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where\n O: ComponentOrder<Rgba<S, T>, P>,"],["impl<S> From<Luma<S, u16>> for u16"],["impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>"],["impl<S, T> From<Box<Hwb<S, T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Luv<Wp, T>>; N]> for PreAlpha<Luv<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Luv<Wp, T>: Premultiply<Scalar = T>,\n Luv<Wp, V>: Premultiply<Scalar = V>,"],["impl<O> From<Packed<O, u64>> for u64"],["impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]"],["impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>"],["impl<'a, S, T> From<&'a mut [T; 1]> for &'a mut Luma<S, T>"],["impl<C: Premultiply, const N: usize> From<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]"],["impl<S> From<u16> for Luma<S, u8>"],["impl<C, T, const N: usize> From<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T> From<T> for OklabHue<T>"],["impl<'a, T> From<&'a Okhsl<T>> for &'a [T; 3]"],["impl<'a, O> From<&'a Packed<O, u16>> for &'a u16"],["impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]"],["impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)"],["impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)"],["impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>"],["impl<'a, S> From<&'a u128> for &'a Luma<S, u128>where\n u128: AsRef<Luma<S, u128>>,"],["impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)"],["impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgb<U>where\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl<'a, S> From<&'a u32> for &'a Luma<S, u32>where\n u32: AsRef<Luma<S, u32>>,"],["impl<C, T: Stimulus> From<C> for Alpha<C, T>"],["impl<T> From<Box<Okhsl<T>, Global>> for Box<[T; 3]>"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>"],["impl<'a, T> From<&'a Okhsl<T>> for &'a [T]"],["impl<C> From<C> for PreAlpha<C>where\n C: Premultiply,\n C::Scalar: Stimulus,"],["impl<O> From<Packed<O, u8>> for u8"],["impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)"],["impl<T> From<Okhwb<T>> for [T; 3]"],["impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]"],["impl<S> From<u16> for Lumaa<S, u8>"]] +"palette":[["impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)"],["impl<T, V, const N: usize> From<[Alpha<Oklab<T>, T>; N]> for Alpha<Oklab<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]"],["impl<T> From<Box<Oklch<T>, Global>> for Box<[T; 3]>"],["impl<'a, T> From<&'a Okhwb<T>> for &'a [T; 3]"],["impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>"],["impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>"],["impl<'a, O> From<&'a Packed<O, u128>> for &'a u128"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Rgb<S, T>"],["impl<'a, T> From<&'a mut Okhsl<T>> for &'a mut [T; 3]"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Lab<Wp, V>>> for [PreAlpha<Lab<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Lab<Wp, T>: Premultiply<Scalar = T>,\n Lab<Wp, V>: Premultiply<Scalar = V>,"],["impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>"],["impl<Wp, T> From<Box<Lchuv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where\n U: FromStimulus<T>,\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)"],["impl<T> From<Okhsl<T>> for [T; 3]"],["impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>"],["impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a Packed<O, u8>> for &'a u8"],["impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T]"],["impl<Wp, T> From<Box<Lch<Wp, T>, Global>> for Box<[T; 3]>"],["impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where\n O: ComponentOrder<Rgba<S, T>, P>,"],["impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]"],["impl<O, P> From<P> for Packed<O, P>where\n Packed<O, P>: UintCast<Uint = P>,"],["impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)"],["impl<T, U> From<Rgb<Srgb, T>> for LinSrgba<U>where\n U: Stimulus,\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>"],["impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>"],["impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T> From<Rgb<S, T>> for (T, T, T)"],["impl<S, T> From<[T; 3]> for Hsv<S, T>"],["impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]"],["impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>"],["impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]"],["impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where\n Self: Premultiply<Scalar = T>,"],["impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl From<&'static str> for FromHexError"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>"],["impl<T> From<Oklab<T>> for [T; 3]"],["impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut u32> for &'a mut Luma<S, u32>where\n u32: AsMut<Luma<S, u32>>,"],["impl<O> From<Packed<O, u128>> for u128"],["impl<T> From<(T, T, T)> for Oklab<T>"],["impl<'a, S> From<&'a mut u16> for &'a mut Luma<S, u16>where\n u16: AsMut<Luma<S, u16>>,"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>"],["impl<'a, O, T, const N: usize> From<&'a [T; N]> for &'a Packed<O, [T; N]>"],["impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Luv<Wp, T>> for [T; 3]"],["impl<'a, S> From<&'a mut u8> for &'a mut Luma<S, u8>where\n u8: AsMut<Luma<S, u8>>,"],["impl<T, V, const N: usize> From<Okhwb<V>> for [Okhwb<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where\n C: Premultiply,"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Xyz<Wp, V>>> for [PreAlpha<Xyz<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Xyz<Wp, T>: Premultiply<Scalar = T>,\n Xyz<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a u16> for &'a Luma<S, u16>where\n u16: AsRef<Luma<S, u16>>,"],["impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)"],["impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>"],["impl<T, V, const N: usize> From<[Alpha<Oklch<T>, T>; N]> for Alpha<Oklch<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<[PreAlpha<Oklab<T>>; N]> for PreAlpha<Oklab<V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Oklab<T>: Premultiply<Scalar = T>,\n Oklab<V>: Premultiply<Scalar = V>,"],["impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S> From<&'a Luma<S, u8>> for &'a u8"],["impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]"],["impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a mut f64> for &'a mut Luma<S, f64>where\n f64: AsMut<Luma<S, f64>>,"],["impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]"],["impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>"],["impl<S, T, V, const N: usize> From<PreAlpha<Rgb<S, V>>> for [PreAlpha<Rgb<S, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Rgb<S, T>: Premultiply<Scalar = T>,\n Rgb<S, V>: Premultiply<Scalar = V>,"],["impl<Wp, T> From<Box<Yxy<Wp, T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Luv<Wp, V>>> for [PreAlpha<Luv<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Luv<Wp, T>: Premultiply<Scalar = T>,\n Luv<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a Luma<S, u32>> for &'a u32"],["impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S> From<Alpha<Luma<S, u8>, u8>> for u16"],["impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut Okhsl<T>> for &'a mut [T]"],["impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)"],["impl<'a, S> From<&'a mut Luma<S, f64>> for &'a mut f64"],["impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>"],["impl<'a, T> From<&'a Oklab<T>> for &'a [T; 3]"],["impl<O, T, const N: usize> From<[T; N]> for Packed<O, [T; N]>"],["impl<'a, O, P> From<&'a P> for &'a Packed<O, P>where\n P: AsRef<Packed<O, P>>,\n Packed<O, P>: UintCast<Uint = P>,"],["impl<S, T> From<Box<Hsl<S, T>, Global>> for Box<[T; 3]>"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>"],["impl<C: Premultiply, const N: usize> From<PreAlpha<C>> for [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> From<T> for LabHue<T>"],["impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>"],["impl<S> From<Luma<S, u8>> for u16"],["impl From<OklabHue<f64>> for f64"],["impl<S, T> From<Box<Rgb<S, T>, Global>> for Box<[T; 3]>"],["impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T> From<T> for RgbHue<T>"],["impl<'a, S> From<&'a mut u64> for &'a mut Luma<S, u64>where\n u64: AsMut<Luma<S, u64>>,"],["impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)"],["impl<S, T> From<Rgb<S, T>> for [T; 3]"],["impl<S, T> From<(T, T, T)> for Rgb<S, T>"],["impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T, V, const N: usize> From<Luma<S, V>> for [Luma<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]"],["impl<'a, S> From<&'a mut Luma<S, u64>> for &'a mut u64"],["impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]"],["impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>"],["impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>"],["impl<'a, T> From<&'a mut Okhwb<T>> for &'a mut [T; 3]"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>"],["impl<S, T, V, const N: usize> From<PreAlpha<Luma<S, V>>> for [PreAlpha<Luma<S, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Luma<S, T>: Premultiply<Scalar = T>,\n Luma<S, V>: Premultiply<Scalar = V>,"],["impl<'a, O, T, const N: usize> From<&'a mut [T; N]> for &'a mut Packed<O, [T; N]>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>"],["impl<T> From<Box<Oklab<T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a mut Packed<O, u8>> for &'a mut u8"],["impl<O, T, const N: usize> From<Box<Packed<O, [T; N]>, Global>> for Box<[T; N]>"],["impl<T, U> From<Rgb<Srgb, T>> for LinSrgb<U>where\n Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,"],["impl<T> From<Box<Okhwb<T>, Global>> for Box<[T; 3]>"],["impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T> From<Box<Luma<S, T>, Global>> for Box<[T; 1]>"],["impl From<RgbHue<f32>> for f32"],["impl<'a, S> From<&'a mut u128> for &'a mut Luma<S, u128>where\n u128: AsMut<Luma<S, u128>>,"],["impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where\n Self: Premultiply<Scalar = T>,"],["impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]"],["impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>"],["impl<S, T, V, const N: usize> From<[Luma<S, T>; N]> for Luma<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<Lab<Wp, T>, Global>> for Box<[T; 3]>"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>"],["impl From<LuvHue<u8>> for u8"],["impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]"],["impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T, V, const N: usize> From<[Oklab<T>; N]> for Oklab<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>"],["impl<S> From<Luma<S, f64>> for f64"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>"],["impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)"],["impl<S, T> From<(T,)> for Luma<S, T>"],["impl<'a, S> From<&'a Luma<S, f32>> for &'a f32"],["impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]"],["impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T]"],["impl<'a, T> From<&'a [T; 3]> for &'a Oklab<T>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>"],["impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>"],["impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>"],["impl<'a, S> From<&'a Luma<S, f64>> for &'a f64"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhsl<T>>"],["impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)"],["impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where\n U: FromStimulus<T>,\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl From<OklabHue<f32>> for f32"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Rgb<S, T>>"],["impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where\n O: ComponentOrder<Rgba<S, T>, P>,"],["impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a [T; N]> for &'a Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S> From<u16> for Lumaa<S, u8>"],["impl<Wp, T> From<Box<Xyz<Wp, T>, Global>> for Box<[T; 3]>"],["impl<T> From<Oklab<T>> for (T, T, T)"],["impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T; N]"],["impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgba<U>where\n U: Stimulus,\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T; 3]"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut [<C as Premultiply>::Scalar; N]> for &'a mut PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S, T> From<Hsl<S, T>> for [T; 3]"],["impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]"],["impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>"],["impl<'a, S> From<&'a f32> for &'a Luma<S, f32>where\n f32: AsRef<Luma<S, f32>>,"],["impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, S> From<&'a mut Luma<S, u128>> for &'a mut u128"],["impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where\n O: ComponentOrder<Rgba<S, u8>, P>,"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Rgb<S, T>"],["impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)"],["impl<'a, O, P> From<&'a mut P> for &'a mut Packed<O, P>where\n P: AsMut<Packed<O, P>>,\n Packed<O, P>: UintCast<Uint = P>,"],["impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]"],["impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>"],["impl<'a, O> From<&'a Packed<O, u32>> for &'a u32"],["impl<'a, T> From<&'a Okhwb<T>> for &'a [T]"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>"],["impl<S, T> From<Box<[T; 1], Global>> for Box<Luma<S, T>>"],["impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]"],["impl<'a, C: Premultiply, const N: usize> From<&'a [<C as Premultiply>::Scalar; N]> for &'a PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]"],["impl<S> From<Luma<S, u32>> for u32"],["impl<T> From<[T; 3]> for Oklab<T>"],["impl From<LuvHue<f32>> for f32"],["impl<'a, S> From<&'a u8> for &'a Luma<S, u8>where\n u8: AsRef<Luma<S, u8>>,"],["impl<'a, S> From<&'a u64> for &'a Luma<S, u64>where\n u64: AsRef<Luma<S, u64>>,"],["impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]"],["impl<S> From<u16> for Luma<S, u8>"],["impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Xyz<Wp, T>>; N]> for PreAlpha<Xyz<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Xyz<Wp, T>: Premultiply<Scalar = T>,\n Xyz<Wp, V>: Premultiply<Scalar = V>,"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, S> From<&'a mut Luma<S, u16>> for &'a mut u16"],["impl<O, T, const N: usize> From<Box<[T; N], Global>> for Box<Packed<O, [T; N]>>"],["impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where\n Self: Premultiply<Scalar = T>,"],["impl From<RgbHue<f64>> for f32"],["impl<S, T, V, const N: usize> From<[PreAlpha<Rgb<S, T>>; N]> for PreAlpha<Rgb<S, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Rgb<S, T>: Premultiply<Scalar = T>,\n Rgb<S, V>: Premultiply<Scalar = V>,"],["impl From<LabHue<f64>> for f32"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Lab<Wp, T>>; N]> for PreAlpha<Lab<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Lab<Wp, T>: Premultiply<Scalar = T>,\n Lab<Wp, V>: Premultiply<Scalar = V>,"],["impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>"],["impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]"],["impl<S, T> From<[T; 3]> for Hwb<S, T>"],["impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]"],["impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<[Okhwb<T>; N]> for Okhwb<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>"],["impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]"],["impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>"],["impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T]"],["impl From<LuvHue<f64>> for f64"],["impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)"],["impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where\n O: ComponentOrder<Lumaa<S, T>, P>,"],["impl<'a, S, T> From<&'a [T; 1]> for &'a Luma<S, T>"],["impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)"],["impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]"],["impl<Wp, T> From<Lab<Wp, T>> for [T; 3]"],["impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)"],["impl<T> From<[T; 3]> for Okhwb<T>"],["impl<O> From<Packed<O, u16>> for u16"],["impl<T> From<[T; 3]> for Oklch<T>"],["impl<S, T> From<[T; 3]> for Rgb<S, T>"],["impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a mut Packed<O, u32>> for &'a mut u32"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklab<T>"],["impl<O> From<Packed<O, u32>> for u32"],["impl From<OklabHue<f32>> for f64"],["impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)"],["impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>"],["impl<'a, S> From<&'a f64> for &'a Luma<S, f64>where\n f64: AsRef<Luma<S, f64>>,"],["impl<'a, S> From<&'a Luma<S, u16>> for &'a u16"],["impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>"],["impl<S, T, V, const N: usize> From<[Rgb<S, T>; N]> for Rgb<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>"],["impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Box<Hsluv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<S, T, V, const N: usize> From<[PreAlpha<Luma<S, T>>; N]> for PreAlpha<Luma<S, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Luma<S, T>: Premultiply<Scalar = T>,\n Luma<S, V>: Premultiply<Scalar = V>,"],["impl<S> From<Luma<S, u64>> for u64"],["impl<'a, S> From<&'a mut f32> for &'a mut Luma<S, f32>where\n f32: AsMut<Luma<S, f32>>,"],["impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>"],["impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T> From<Hwb<S, T>> for [T; 3]"],["impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where\n C: Premultiply,"],["impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]"],["impl<Wp, T> From<[T; 3]> for Luv<Wp, T>"],["impl<'a, O> From<&'a mut Packed<O, u16>> for &'a mut u16"],["impl<'a, T> From<&'a Oklch<T>> for &'a [T]"],["impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]"],["impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar; N]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Yxy<Wp, T>>; N]> for PreAlpha<Yxy<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Yxy<Wp, T>: Premultiply<Scalar = T>,\n Yxy<Wp, V>: Premultiply<Scalar = V>,"],["impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)"],["impl<S, T> From<[T; 3]> for Hsl<S, T>"],["impl<Wp, T> From<[T; 3]> for Lch<Wp, T>"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>"],["impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]"],["impl<C, T, const N: usize> From<Box<Alpha<C, T>, Global>> for Box<[T; N]>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]"],["impl<T> From<[T; 3]> for Okhsl<T>"],["impl<S, T, V, const N: usize> From<Rgb<S, V>> for [Rgb<S, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]"],["impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>"],["impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T; 1]"],["impl From<LabHue<f32>> for f64"],["impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>"],["impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T; 3]"],["impl From<LuvHue<f64>> for f32"],["impl From<RgbHue<f64>> for f64"],["impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]"],["impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, V, const N: usize> From<Okhsl<V>> for [Okhsl<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)"],["impl<'a, S> From<&'a mut Luma<S, u8>> for &'a mut u8"],["impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]"],["impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]"],["impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)"],["impl<Wp, T, V, const N: usize> From<PreAlpha<Yxy<Wp, V>>> for [PreAlpha<Yxy<Wp, T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Yxy<Wp, T>: Premultiply<Scalar = T>,\n Yxy<Wp, V>: Premultiply<Scalar = V>,"],["impl From<RgbHue<u8>> for u8"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhsl<T>"],["impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]"],["impl<T> From<[T; 3]> for Okhsv<T>"],["impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where\n O: ComponentOrder<Rgba<S, T>, P>,\n Rgba<S, T>: From<Rgb<S, T>>,"],["impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, O> From<&'a mut Packed<O, u64>> for &'a mut u64"],["impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)"],["impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>"],["impl From<ParseIntError> for FromHexError"],["impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]"],["impl<'a, S> From<&'a Luma<S, u128>> for &'a u128"],["impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>"],["impl<S, T> From<T> for Luma<S, T>"],["impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>"],["impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>"],["impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]"],["impl<S, T> From<[T; 1]> for Luma<S, T>"],["impl<O, T, const N: usize> From<Packed<O, [T; N]>> for [T; N]"],["impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl From<OklabHue<f64>> for f32"],["impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>"],["impl<'a, O> From<&'a mut Packed<O, u128>> for &'a mut u128"],["impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T; 1]"],["impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where\n O: ComponentOrder<Lumaa<S, T>, P>,"],["impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]"],["impl<Wp, T> From<Box<Luv<Wp, T>, Global>> for Box<[T; 3]>"],["impl<'a, T> From<&'a [T; 3]> for &'a Okhwb<T>"],["impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]"],["impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>"],["impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T; N]"],["impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>"],["impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]"],["impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S> From<Luma<S, f32>> for f32"],["impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)"],["impl<S, T> From<Luma<S, T>> for (T,)"],["impl<Wp, T> From<Lch<Wp, T>> for [T; 3]"],["impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar]where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>"],["impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where\n O: ComponentOrder<Lumaa<S, u8>, P>,"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>"],["impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]"],["impl<S> From<u32> for Rgb<S, u8>"],["impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T]"],["impl From<OklabHue<u8>> for u8"],["impl<'a, O> From<&'a Packed<O, u64>> for &'a u64"],["impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T]"],["impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhwb<T>"],["impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]"],["impl From<LuvHue<f32>> for f64"],["impl<T, V, const N: usize> From<PreAlpha<Oklab<V>>> for [PreAlpha<Oklab<T>>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,\n Oklab<T>: Premultiply<Scalar = T>,\n Oklab<V>: Premultiply<Scalar = V>,"],["impl<'a, S> From<&'a mut Luma<S, f32>> for &'a mut f32"],["impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)"],["impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhwb<T>>"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>"],["impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]"],["impl From<LabHue<f32>> for f32"],["impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T; 3]"],["impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>"],["impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl From<LabHue<u8>> for u8"],["impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]"],["impl<S, T> From<Box<Hsv<S, T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)"],["impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>"],["impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)"],["impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a Oklab<T>> for &'a [T]"],["impl<'a, S> From<&'a mut Luma<S, u32>> for &'a mut u32"],["impl From<RgbHue<f32>> for f64"],["impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsl<T>"],["impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)"],["impl<S> From<Rgb<S, u8>> for u32"],["impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T> From<Luma<S, T>> for [T; 1]"],["impl From<LabHue<f64>> for f64"],["impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)"],["impl<S> From<Luma<S, u128>> for u128"],["impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>"],["impl<T, V, const N: usize> From<[Okhsl<T>; N]> for Okhsl<V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, S> From<&'a Luma<S, u64>> for &'a u64"],["impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<'a, T> From<&'a mut Okhwb<T>> for &'a mut [T]"],["impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T]"],["impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>"],["impl<S> From<Luma<S, u8>> for u8"],["impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<T> From<Box<Okhsv<T>, Global>> for Box<[T; 3]>"],["impl<Wp, T> From<[T; 3]> for Lab<Wp, T>"],["impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T]"],["impl<T> From<Oklch<T>> for [T; 3]"],["impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)"],["impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where\n Self: Default,\n V: IntoScalarArray<N, Scalar = T>,"],["impl<C: Premultiply, const N: usize> From<Box<PreAlpha<C>, Global>> for Box<[C::Scalar; N]>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<S> From<u32> for Rgba<S, u8>"],["impl<'a, T> From<&'a Okhsv<T>> for &'a [T]"],["impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>"],["impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,"],["impl<S, T> From<Hsv<S, T>> for [T; 3]"],["impl<T> From<Okhsv<T>> for [T; 3]"],["impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>"],["impl<C: Premultiply, const N: usize> From<Box<[<C as Premultiply>::Scalar; N], Global>> for Box<PreAlpha<C>>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<T> From<T> for LuvHue<T>"],["impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32"],["impl<S> From<Luma<S, u16>> for u16"],["impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>"],["impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>"],["impl<S, T> From<Box<Hwb<S, T>, Global>> for Box<[T; 3]>"],["impl<Wp, T, V, const N: usize> From<[PreAlpha<Luv<Wp, T>>; N]> for PreAlpha<Luv<Wp, V>>where\n [T; N]: Default,\n V: FromScalarArray<N, Scalar = T>,\n Luv<Wp, T>: Premultiply<Scalar = T>,\n Luv<Wp, V>: Premultiply<Scalar = V>,"],["impl<O> From<Packed<O, u64>> for u64"],["impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]"],["impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where\n O: ComponentOrder<Lumaa<S, T>, P>,\n Lumaa<S, T>: From<Luma<S, T>>,"],["impl<'a, S, T> From<&'a mut [T; 1]> for &'a mut Luma<S, T>"],["impl<C: Premultiply, const N: usize> From<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where\n PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,"],["impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]"],["impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>"],["impl<C, T, const N: usize> From<Alpha<C, T>> for [T; N]where\n Alpha<C, T>: ArrayCast<Array = [T; N]>,"],["impl<T> From<T> for OklabHue<T>"],["impl<'a, T> From<&'a Okhsl<T>> for &'a [T; 3]"],["impl<'a, O> From<&'a Packed<O, u16>> for &'a u16"],["impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]"],["impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where\n Self: Premultiply<Scalar = T>,"],["impl<'a, S> From<&'a u128> for &'a Luma<S, u128>where\n u128: AsRef<Luma<S, u128>>,"],["impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgb<U>where\n Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,"],["impl<'a, S> From<&'a u32> for &'a Luma<S, u32>where\n u32: AsRef<Luma<S, u32>>,"],["impl<C, T: Stimulus> From<C> for Alpha<C, T>"],["impl<T> From<Box<Okhsl<T>, Global>> for Box<[T; 3]>"],["impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>"],["impl<'a, T> From<&'a Okhsl<T>> for &'a [T]"],["impl<C> From<C> for PreAlpha<C>where\n C: Premultiply,\n C::Scalar: Stimulus,"],["impl<O> From<Packed<O, u8>> for u8"],["impl<T> From<Okhwb<T>> for [T; 3]"],["impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/default/trait.Default.js b/implementors/core/default/trait.Default.js index e36fbd96e..74a5bd955 100644 --- a/implementors/core/default/trait.Default.js +++ b/implementors/core/default/trait.Default.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<T: Default> Default for OklabHue<T>"],["impl<T> Default for Oklab<T>where\n T: Zero,"],["impl<Wp, T> Default for Luv<Wp, T>where\n T: Zero,"],["impl<T> Default for Okhwb<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<C: Default, T: Stimulus> Default for Alpha<C, T>"],["impl<C> Default for PreAlpha<C>where\n C: Default + Premultiply,\n C::Scalar: Stimulus,"],["impl<S, T> Default for Hsv<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<S, T> Default for Hwb<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<Wp, T> Default for Xyz<Wp, T>where\n T: Zero,"],["impl<T: Default> Default for LuvHue<T>"],["impl<Wp, T> Default for Lch<Wp, T>where\n T: Zero + Real,\n LabHue<T>: Default,"],["impl<Wp, T> Default for Lab<Wp, T>where\n T: Zero,"],["impl<Wp, T> Default for Yxy<Wp, T>where\n T: Zero,\n Wp: WhitePoint<T>,\n Xyz<Wp, T>: IntoColorUnclamped<Self>,"],["impl<Wp, T> Default for Lchuv<Wp, T>where\n T: Zero + Real,\n LuvHue<T>: Default,"],["impl<T: Default> Default for LabHue<T>"],["impl<T> Default for Okhsl<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<T> Default for Oklch<T>where\n T: Zero + One,\n OklabHue<T>: Default,"],["impl<T: Default> Default for RgbHue<T>"],["impl<S, T> Default for Hsl<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<Wp, T> Default for Hsluv<Wp, T>where\n T: Real + Zero,\n LuvHue<T>: Default,"],["impl<T> Default for Okhsv<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<S, T> Default for Luma<S, T>where\n T: Stimulus,"],["impl<S, T> Default for Rgb<S, T>where\n T: Stimulus,"]] +"palette":[["impl<T: Default> Default for OklabHue<T>"],["impl<S, T> Default for Hwb<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<Wp, T> Default for Hsluv<Wp, T>where\n T: Real + Zero,\n LuvHue<T>: Default,"],["impl<T> Default for Okhwb<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<T> Default for Oklab<T>where\n T: Zero,"],["impl<C: Default, T: Stimulus> Default for Alpha<C, T>"],["impl<Wp, T> Default for Lab<Wp, T>where\n T: Zero,"],["impl<C> Default for PreAlpha<C>where\n C: Default + Premultiply,\n C::Scalar: Stimulus,"],["impl<T> Default for Okhsv<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<Wp, T> Default for Xyz<Wp, T>where\n T: Zero,"],["impl<S, T> Default for Hsv<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<T: Default> Default for LuvHue<T>"],["impl<Wp, T> Default for Yxy<Wp, T>where\n T: Zero,\n Wp: WhitePoint<T>,\n Xyz<Wp, T>: IntoColorUnclamped<Self>,"],["impl<T: Default> Default for LabHue<T>"],["impl<Wp, T> Default for Lch<Wp, T>where\n T: Zero + Real,\n LabHue<T>: Default,"],["impl<T> Default for Okhsl<T>where\n T: Stimulus,\n OklabHue<T>: Default,"],["impl<Wp, T> Default for Luv<Wp, T>where\n T: Zero,"],["impl<T> Default for Oklch<T>where\n T: Zero + One,\n OklabHue<T>: Default,"],["impl<T: Default> Default for RgbHue<T>"],["impl<S, T> Default for Hsl<S, T>where\n T: Stimulus,\n RgbHue<T>: Default,"],["impl<S, T> Default for Luma<S, T>where\n T: Stimulus,"],["impl<S, T> Default for Rgb<S, T>where\n T: Stimulus,"],["impl<Wp, T> Default for Lchuv<Wp, T>where\n T: Zero + Real,\n LuvHue<T>: Default,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/error/trait.Error.js b/implementors/core/error/trait.Error.js index c5fc6fa48..5e8a81354 100644 --- a/implementors/core/error/trait.Error.js +++ b/implementors/core/error/trait.Error.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<T> Error for VecCastError<T>"],["impl<T: Debug> Error for OutOfBounds<T>"],["impl Error for FromHexError"],["impl<T> Error for BoxedSliceCastError<T>"],["impl Error for SliceCastError"]] +"palette":[["impl<T> Error for VecCastError<T>"],["impl<T: Debug> Error for OutOfBounds<T>"],["impl<T> Error for BoxedSliceCastError<T>"],["impl Error for SliceCastError"],["impl Error for FromHexError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.Debug.js b/implementors/core/fmt/trait.Debug.js index 86f04f9d2..f3c3737cb 100644 --- a/implementors/core/fmt/trait.Debug.js +++ b/implementors/core/fmt/trait.Debug.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>"],["impl Debug for F11"],["impl<N: Debug + Number> Debug for GammaFn<N>"],["impl Debug for D65Degree10"],["impl<S: Debug, T: Debug> Debug for Luma<S, T>"],["impl<T: Debug> Debug for Oklab<T>"],["impl Debug for F2"],["impl Debug for LinearFn"],["impl<S: Debug, T: Debug> Debug for Rgb<S, T>"],["impl Debug for D55"],["impl<T: Debug> Debug for LabHue<T>"],["impl<S: Debug, T: Debug> Debug for Hsv<S, T>"],["impl Debug for Argb"],["impl Debug for Any"],["impl<T: Debug> Debug for RgbHue<T>"],["impl Debug for A"],["impl<T> Debug for VecCastError<T>"],["impl<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>"],["impl<T: Debug> Debug for Oklch<T>"],["impl Debug for D75Degree10"],["impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>"],["impl Debug for Equations"],["impl Debug for Equation"],["impl<S: Debug> Debug for Linear<S>"],["impl Debug for D55Degree10"],["impl<O: Debug, P: Debug> Debug for Packed<O, P>"],["impl<S: Debug, N: Debug + Number> Debug for Gamma<S, N>"],["impl Debug for Srgb"],["impl Debug for D65"],["impl Debug for D50Degree10"],["impl Debug for La"],["impl<T> Debug for BoxedSliceCastError<T>"],["impl Debug for SliceCastError"],["impl<T: Debug> Debug for Okhsl<T>"],["impl<C: Debug, T: Debug> Debug for Alpha<C, T>"],["impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>"],["impl<T: Debug> Debug for LuvHue<T>"],["impl<T: Debug> Debug for Okhwb<T>"],["impl Debug for Parameter"],["impl<S: Debug, T: Debug> Debug for Hwb<S, T>"],["impl<C: Debug + Premultiply> Debug for PreAlpha<C>where\n C::Scalar: Debug,"],["impl<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>"],["impl Debug for VecCastErrorKind"],["impl<T: Debug> Debug for OutOfBounds<T>"],["impl Debug for Bgra"],["impl Debug for Al"],["impl<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>"],["impl Debug for F2p2"],["impl Debug for D75"],["impl Debug for FromHexError"],["impl<Wp: Debug, T: Debug> Debug for Luv<Wp, T>"],["impl<S: Debug, T: Debug> Debug for Hsl<S, T>"],["impl Debug for Rgba"],["impl Debug for Parameters"],["impl Debug for E"],["impl Debug for D50"],["impl Debug for C"],["impl Debug for B"],["impl Debug for Abgr"],["impl<T: Debug> Debug for Okhsv<T>"],["impl<T: Debug> Debug for OklabHue<T>"],["impl Debug for F7"]] +"palette":[["impl Debug for F11"],["impl<N: Debug + Number> Debug for GammaFn<N>"],["impl Debug for D65Degree10"],["impl Debug for F2"],["impl Debug for LinearFn"],["impl<S: Debug, T: Debug> Debug for Luma<S, T>"],["impl Debug for D55"],["impl<T: Debug> Debug for LabHue<T>"],["impl Debug for Argb"],["impl Debug for Any"],["impl<T: Debug> Debug for Oklch<T>"],["impl<T: Debug> Debug for RgbHue<T>"],["impl Debug for A"],["impl<T> Debug for VecCastError<T>"],["impl<T: Debug> Debug for Okhsv<T>"],["impl<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>"],["impl Debug for D75Degree10"],["impl<S: Debug, T: Debug> Debug for Hsv<S, T>"],["impl Debug for Equations"],["impl Debug for Equation"],["impl<S: Debug> Debug for Linear<S>"],["impl<S: Debug, T: Debug> Debug for Hwb<S, T>"],["impl Debug for D55Degree10"],["impl<O: Debug, P: Debug> Debug for Packed<O, P>"],["impl<S: Debug, N: Debug + Number> Debug for Gamma<S, N>"],["impl Debug for Srgb"],["impl Debug for D65"],["impl<S: Debug, T: Debug> Debug for Rgb<S, T>"],["impl Debug for D50Degree10"],["impl Debug for La"],["impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>"],["impl<T> Debug for BoxedSliceCastError<T>"],["impl Debug for SliceCastError"],["impl<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>"],["impl<T: Debug> Debug for Okhsl<T>"],["impl<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>"],["impl<C: Debug, T: Debug> Debug for Alpha<C, T>"],["impl<Wp: Debug, T: Debug> Debug for Luv<Wp, T>"],["impl<T: Debug> Debug for Oklab<T>"],["impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>"],["impl<T: Debug> Debug for LuvHue<T>"],["impl<T: Debug> Debug for Okhwb<T>"],["impl Debug for Parameter"],["impl<C: Debug + Premultiply> Debug for PreAlpha<C>where\n C::Scalar: Debug,"],["impl Debug for VecCastErrorKind"],["impl<T: Debug> Debug for OutOfBounds<T>"],["impl Debug for Bgra"],["impl Debug for Al"],["impl Debug for F2p2"],["impl Debug for D75"],["impl Debug for FromHexError"],["impl<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>"],["impl Debug for Rgba"],["impl Debug for Parameters"],["impl Debug for E"],["impl Debug for D50"],["impl Debug for C"],["impl Debug for B"],["impl<S: Debug, T: Debug> Debug for Hsl<S, T>"],["impl Debug for Abgr"],["impl<T: Debug> Debug for OklabHue<T>"],["impl Debug for F7"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.Display.js b/implementors/core/fmt/trait.Display.js index 36d5bd1c4..d50c9c7f6 100644 --- a/implementors/core/fmt/trait.Display.js +++ b/implementors/core/fmt/trait.Display.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl Display for SliceCastError"],["impl Display for FromHexError"],["impl<T> Display for BoxedSliceCastError<T>"],["impl<T> Display for OutOfBounds<T>"],["impl<T> Display for VecCastError<T>"]] +"palette":[["impl Display for SliceCastError"],["impl<T> Display for BoxedSliceCastError<T>"],["impl<T> Display for OutOfBounds<T>"],["impl<T> Display for VecCastError<T>"],["impl Display for FromHexError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.LowerHex.js b/implementors/core/fmt/trait.LowerHex.js index 7abbe26c2..1889908de 100644 --- a/implementors/core/fmt/trait.LowerHex.js +++ b/implementors/core/fmt/trait.LowerHex.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<C, T> LowerHex for Alpha<C, T>where\n T: LowerHex,\n C: LowerHex,"],["impl<S, T> LowerHex for Luma<S, T>where\n T: LowerHex,"],["impl<S, T> LowerHex for Rgb<S, T>where\n T: LowerHex,"]] +"palette":[["impl<C, T> LowerHex for Alpha<C, T>where\n T: LowerHex,\n C: LowerHex,"],["impl<S, T> LowerHex for Rgb<S, T>where\n T: LowerHex,"],["impl<S, T> LowerHex for Luma<S, T>where\n T: LowerHex,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/fmt/trait.UpperHex.js b/implementors/core/fmt/trait.UpperHex.js index 36eb63a37..00f66bab2 100644 --- a/implementors/core/fmt/trait.UpperHex.js +++ b/implementors/core/fmt/trait.UpperHex.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<C, T> UpperHex for Alpha<C, T>where\n T: UpperHex,\n C: UpperHex,"],["impl<S, T> UpperHex for Luma<S, T>where\n T: UpperHex,"],["impl<S, T> UpperHex for Rgb<S, T>where\n T: UpperHex,"]] +"palette":[["impl<S, T> UpperHex for Rgb<S, T>where\n T: UpperHex,"],["impl<C, T> UpperHex for Alpha<C, T>where\n T: UpperHex,\n C: UpperHex,"],["impl<S, T> UpperHex for Luma<S, T>where\n T: UpperHex,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/marker/trait.Copy.js b/implementors/core/marker/trait.Copy.js index 463dfb726..0db0ee4a0 100644 --- a/implementors/core/marker/trait.Copy.js +++ b/implementors/core/marker/trait.Copy.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<S, T> Copy for Hsv<S, T>where\n T: Copy,"],["impl<Wp, T> Copy for Hsluv<Wp, T>where\n T: Copy,"],["impl Copy for D50"],["impl Copy for Abgr"],["impl Copy for Parameter"],["impl<N: Copy + Number> Copy for GammaFn<N>"],["impl Copy for A"],["impl Copy for D50Degree10"],["impl Copy for D75Degree10"],["impl Copy for B"],["impl<T: Copy> Copy for Okhsv<T>"],["impl Copy for D55"],["impl<T: Copy> Copy for Okhwb<T>"],["impl<Wp, T> Copy for Lchuv<Wp, T>where\n T: Copy,"],["impl Copy for Bgra"],["impl Copy for Equations"],["impl Copy for C"],["impl<Wp, T> Copy for Yxy<Wp, T>where\n T: Copy,"],["impl Copy for Equation"],["impl Copy for La"],["impl<T: Copy> Copy for LabHue<T>"],["impl Copy for Al"],["impl Copy for Rgba"],["impl Copy for E"],["impl<Wp, T> Copy for Lch<Wp, T>where\n T: Copy,"],["impl Copy for F7"],["impl<S: Copy> Copy for Linear<S>"],["impl<T: Copy> Copy for RgbHue<T>"],["impl Copy for D65"],["impl<S, T> Copy for Hwb<S, T>where\n T: Copy,"],["impl Copy for D55Degree10"],["impl<Wp, T> Copy for Xyz<Wp, T>where\n T: Copy,"],["impl Copy for SliceCastError"],["impl Copy for D75"],["impl Copy for F11"],["impl<S: Copy, N: Copy + Number> Copy for Gamma<S, N>"],["impl Copy for Argb"],["impl Copy for LinearFn"],["impl<C: Copy + Premultiply> Copy for PreAlpha<C>where\n C::Scalar: Copy,"],["impl Copy for F2"],["impl<T: Copy> Copy for Okhsl<T>"],["impl<T: Copy> Copy for LuvHue<T>"],["impl<Wp, T> Copy for Luv<Wp, T>where\n T: Copy,"],["impl<S, T> Copy for Rgb<S, T>where\n T: Copy,"],["impl<T: Copy> Copy for OklabHue<T>"],["impl Copy for Srgb"],["impl Copy for VecCastErrorKind"],["impl<O, P> Copy for Packed<O, P>where\n P: Copy,"],["impl<Wp, T> Copy for Lab<Wp, T>where\n T: Copy,"],["impl Copy for F2p2"],["impl Copy for Any"],["impl<T: Copy> Copy for Oklch<T>"],["impl<T: Copy> Copy for Oklab<T>"],["impl Copy for Parameters"],["impl<C: Copy, T: Copy> Copy for Alpha<C, T>"],["impl<S, T> Copy for Luma<S, T>where\n T: Copy,"],["impl<S, T> Copy for Hsl<S, T>where\n T: Copy,"],["impl Copy for D65Degree10"]] +"palette":[["impl<S, T> Copy for Hsv<S, T>where\n T: Copy,"],["impl<Wp, T> Copy for Hsluv<Wp, T>where\n T: Copy,"],["impl<T: Copy> Copy for Oklab<T>"],["impl Copy for D50"],["impl Copy for Abgr"],["impl Copy for Parameter"],["impl<N: Copy + Number> Copy for GammaFn<N>"],["impl Copy for A"],["impl Copy for D50Degree10"],["impl Copy for D75Degree10"],["impl Copy for B"],["impl Copy for D55"],["impl<T: Copy> Copy for Okhwb<T>"],["impl<Wp, T> Copy for Lchuv<Wp, T>where\n T: Copy,"],["impl Copy for Bgra"],["impl Copy for Equations"],["impl Copy for C"],["impl<Wp, T> Copy for Yxy<Wp, T>where\n T: Copy,"],["impl Copy for Equation"],["impl Copy for La"],["impl<T: Copy> Copy for LabHue<T>"],["impl Copy for Al"],["impl Copy for Rgba"],["impl Copy for E"],["impl<Wp, T> Copy for Lch<Wp, T>where\n T: Copy,"],["impl Copy for F7"],["impl<S: Copy> Copy for Linear<S>"],["impl<T: Copy> Copy for RgbHue<T>"],["impl Copy for D65"],["impl<T: Copy> Copy for Oklch<T>"],["impl<S, T> Copy for Hwb<S, T>where\n T: Copy,"],["impl Copy for D55Degree10"],["impl<Wp, T> Copy for Xyz<Wp, T>where\n T: Copy,"],["impl Copy for SliceCastError"],["impl Copy for D75"],["impl Copy for F11"],["impl<S: Copy, N: Copy + Number> Copy for Gamma<S, N>"],["impl Copy for Argb"],["impl Copy for LinearFn"],["impl<C: Copy + Premultiply> Copy for PreAlpha<C>where\n C::Scalar: Copy,"],["impl Copy for F2"],["impl<T: Copy> Copy for Okhsl<T>"],["impl<T: Copy> Copy for LuvHue<T>"],["impl<Wp, T> Copy for Luv<Wp, T>where\n T: Copy,"],["impl<S, T> Copy for Rgb<S, T>where\n T: Copy,"],["impl<T: Copy> Copy for OklabHue<T>"],["impl Copy for Srgb"],["impl Copy for VecCastErrorKind"],["impl<T: Copy> Copy for Okhsv<T>"],["impl<O, P> Copy for Packed<O, P>where\n P: Copy,"],["impl<Wp, T> Copy for Lab<Wp, T>where\n T: Copy,"],["impl Copy for F2p2"],["impl Copy for Any"],["impl Copy for Parameters"],["impl<C: Copy, T: Copy> Copy for Alpha<C, T>"],["impl<S, T> Copy for Luma<S, T>where\n T: Copy,"],["impl<S, T> Copy for Hsl<S, T>where\n T: Copy,"],["impl Copy for D65Degree10"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.Add.js b/implementors/core/ops/arith/trait.Add.js index 52e15b3f5..1a69d9c7c 100644 --- a/implementors/core/ops/arith/trait.Add.js +++ b/implementors/core/ops/arith/trait.Add.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<T, C> Add<T> for Alpha<C, T>where\n T: Add + Clone,\n C: Add<T>,"],["impl<C, T> Add<Alpha<C, T>> for Alpha<C, T>where\n C: Add,\n T: Add,"],["impl<S, T> Add<T> for Hwb<S, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Lab<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Okhwb<T>> for Okhwb<T>where\n T: Add<Output = T>,"],["impl<T: Add<Output = T>> Add<LuvHue<T>> for LuvHue<T>"],["impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where\n T: Add<Output = T>,"],["impl Add<OklabHue<f64>> for f64"],["impl<T: Add<Output = T>> Add<OklabHue<T>> for OklabHue<T>"],["impl<T: Add<Output = T>> Add<T> for OklabHue<T>"],["impl Add<RgbHue<f64>> for f64"],["impl<S, T> Add<T> for Hsl<S, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Lchuv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Okhsv<T>> for Okhsv<T>where\n T: Add<Output = T>,"],["impl<T> Add<T> for Okhwb<T>where\n T: Add<Output = T> + Clone,"],["impl Add<RgbHue<f32>> for f32"],["impl<C> Add<f64> for PreAlpha<C>where\n C: Add<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where\n T: Add<Output = T>,"],["impl<S, T> Add<T> for Hsv<S, T>where\n T: Add<Output = T> + Clone,"],["impl Add<LuvHue<f32>> for f32"],["impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where\n T: Add<Output = T>,"],["impl<S, T> Add<T> for Rgb<S, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Lch<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Okhsv<T>where\n T: Add<Output = T> + Clone,"],["impl Add<OklabHue<f32>> for f32"],["impl<S, T> Add<Luma<S, T>> for Luma<S, T>where\n T: Add<Output = T>,"],["impl<S, T> Add<Rgb<S, T>> for Rgb<S, T>where\n T: Add<Output = T>,"],["impl Add<LuvHue<f64>> for f64"],["impl<C> Add<f32> for PreAlpha<C>where\n C: Add<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: Add<Output = T>,"],["impl<T> Add<Okhsl<T>> for Okhsl<T>where\n T: Add<Output = T>,"],["impl Add<LabHue<f32>> for f32"],["impl<T: Add<Output = T>> Add<T> for RgbHue<T>"],["impl<Wp, T> Add<T> for Yxy<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T: Add<Output = T>> Add<LabHue<T>> for LabHue<T>"],["impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: Add<Output = T>,"],["impl<T> Add<Oklch<T>> for Oklch<T>where\n T: Add<Output = T>,"],["impl<T> Add<T> for Okhsl<T>where\n T: Add<Output = T> + Clone,"],["impl<T: Add<Output = T>> Add<T> for LabHue<T>"],["impl<T: Add<Output = T>> Add<T> for LuvHue<T>"],["impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<T> for Xyz<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Oklab<T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Hsluv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Oklab<T>> for Oklab<T>where\n T: Add<Output = T>,"],["impl Add<LabHue<f64>> for f64"],["impl<C> Add<PreAlpha<C>> for PreAlpha<C>where\n C: Add<Output = C> + Premultiply,\n C::Scalar: Add<Output = C::Scalar>,"],["impl<Wp, T> Add<T> for Luv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Add<Output = T>,"],["impl<T: Add<Output = T>> Add<RgbHue<T>> for RgbHue<T>"],["impl<S, T> Add<T> for Luma<S, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Oklch<T>where\n T: Add<Output = T> + Clone,"]] +"palette":[["impl<T, C> Add<T> for Alpha<C, T>where\n T: Add + Clone,\n C: Add<T>,"],["impl<C, T> Add<Alpha<C, T>> for Alpha<C, T>where\n C: Add,\n T: Add,"],["impl<S, T> Add<T> for Hwb<S, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Lab<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Okhwb<T>> for Okhwb<T>where\n T: Add<Output = T>,"],["impl<T: Add<Output = T>> Add<LuvHue<T>> for LuvHue<T>"],["impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where\n T: Add<Output = T>,"],["impl Add<OklabHue<f64>> for f64"],["impl<T: Add<Output = T>> Add<OklabHue<T>> for OklabHue<T>"],["impl<T: Add<Output = T>> Add<T> for OklabHue<T>"],["impl Add<RgbHue<f64>> for f64"],["impl<S, T> Add<T> for Hsl<S, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Lchuv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Okhsv<T>> for Okhsv<T>where\n T: Add<Output = T>,"],["impl<T> Add<T> for Okhwb<T>where\n T: Add<Output = T> + Clone,"],["impl Add<RgbHue<f32>> for f32"],["impl<C> Add<f64> for PreAlpha<C>where\n C: Add<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where\n T: Add<Output = T>,"],["impl<S, T> Add<T> for Hsv<S, T>where\n T: Add<Output = T> + Clone,"],["impl Add<LuvHue<f32>> for f32"],["impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<T> for Lch<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Okhsv<T>where\n T: Add<Output = T> + Clone,"],["impl Add<OklabHue<f32>> for f32"],["impl<S, T> Add<Luma<S, T>> for Luma<S, T>where\n T: Add<Output = T>,"],["impl Add<LuvHue<f64>> for f64"],["impl<C> Add<f32> for PreAlpha<C>where\n C: Add<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: Add<Output = T>,"],["impl<T> Add<Okhsl<T>> for Okhsl<T>where\n T: Add<Output = T>,"],["impl Add<LabHue<f32>> for f32"],["impl<T: Add<Output = T>> Add<T> for RgbHue<T>"],["impl<Wp, T> Add<T> for Yxy<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T: Add<Output = T>> Add<LabHue<T>> for LabHue<T>"],["impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where\n T: Add<Output = T>,"],["impl<S, T> Add<Rgb<S, T>> for Rgb<S, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: Add<Output = T>,"],["impl<T> Add<Oklch<T>> for Oklch<T>where\n T: Add<Output = T>,"],["impl<T> Add<T> for Okhsl<T>where\n T: Add<Output = T> + Clone,"],["impl<T: Add<Output = T>> Add<T> for LabHue<T>"],["impl<T: Add<Output = T>> Add<T> for LuvHue<T>"],["impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Add<Output = T>,"],["impl<Wp, T> Add<T> for Xyz<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Oklab<T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<T> for Hsluv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<S, T> Add<T> for Rgb<S, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<Oklab<T>> for Oklab<T>where\n T: Add<Output = T>,"],["impl Add<LabHue<f64>> for f64"],["impl<C> Add<PreAlpha<C>> for PreAlpha<C>where\n C: Add<Output = C> + Premultiply,\n C::Scalar: Add<Output = C::Scalar>,"],["impl<Wp, T> Add<T> for Luv<Wp, T>where\n T: Add<Output = T> + Clone,"],["impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Add<Output = T>,"],["impl<T: Add<Output = T>> Add<RgbHue<T>> for RgbHue<T>"],["impl<S, T> Add<T> for Luma<S, T>where\n T: Add<Output = T> + Clone,"],["impl<T> Add<T> for Oklch<T>where\n T: Add<Output = T> + Clone,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.AddAssign.js b/implementors/core/ops/arith/trait.AddAssign.js index ee0fa1a20..fb7b71b22 100644 --- a/implementors/core/ops/arith/trait.AddAssign.js +++ b/implementors/core/ops/arith/trait.AddAssign.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl AddAssign<LabHue<f64>> for f64"],["impl<C> AddAssign<PreAlpha<C>> for PreAlpha<C>where\n C: AddAssign + Premultiply,\n C::Scalar: AddAssign + Real,"],["impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Oklch<T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Okhsl<T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Luma<S, T>> for Luma<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Okhsv<T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<T> for Okhwb<T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<T> for Lab<Wp, T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<T> for Oklab<T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<T> for Lch<Wp, T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<Okhwb<T>> for Okhwb<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<Oklab<T>> for Oklab<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: AddAssign,"],["impl<C> AddAssign<f64> for PreAlpha<C>where\n C: AddAssign<f64> + Premultiply<Scalar = f64>,"],["impl AddAssign<RgbHue<f64>> for f64"],["impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<OklabHue<T>> for OklabHue<T>"],["impl<S, T> AddAssign<T> for Luma<S, T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<T> for Hsl<S, T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: AddAssign,"],["impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where\n T: AddAssign,"],["impl<T: AddAssign> AddAssign<T> for LabHue<T>"],["impl AddAssign<OklabHue<f64>> for f64"],["impl<T: AddAssign> AddAssign<LuvHue<T>> for LuvHue<T>"],["impl AddAssign<LuvHue<f64>> for f64"],["impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<Okhsv<T>> for Okhsv<T>where\n T: AddAssign,"],["impl<S, T> AddAssign<T> for Hwb<S, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<T> for OklabHue<T>"],["impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where\n T: AddAssign + Clone,"],["impl AddAssign<OklabHue<f32>> for f32"],["impl<S, T> AddAssign<T> for Rgb<S, T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<T> for RgbHue<T>"],["impl AddAssign<LuvHue<f32>> for f32"],["impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<Oklch<T>> for Oklch<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Luv<Wp, T>where\n T: AddAssign + Clone,"],["impl<C> AddAssign<f32> for PreAlpha<C>where\n C: AddAssign<f32> + Premultiply<Scalar = f32>,"],["impl<S, T> AddAssign<T> for Hsv<S, T>where\n T: AddAssign + Clone,"],["impl AddAssign<RgbHue<f32>> for f32"],["impl<T: AddAssign> AddAssign<T> for LuvHue<T>"],["impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: AddAssign,"],["impl AddAssign<LabHue<f32>> for f32"],["impl<T> AddAssign<Okhsl<T>> for Okhsl<T>where\n T: AddAssign,"],["impl<T, C> AddAssign<T> for Alpha<C, T>where\n T: AddAssign + Clone,\n C: AddAssign<T>,"],["impl<S, T> AddAssign<Rgb<S, T>> for Rgb<S, T>where\n T: AddAssign,"],["impl<T: AddAssign> AddAssign<RgbHue<T>> for RgbHue<T>"],["impl<T: AddAssign> AddAssign<LabHue<T>> for LabHue<T>"],["impl<C, T> AddAssign<Alpha<C, T>> for Alpha<C, T>where\n C: AddAssign,\n T: AddAssign,"]] +"palette":[["impl AddAssign<LabHue<f64>> for f64"],["impl<C> AddAssign<PreAlpha<C>> for PreAlpha<C>where\n C: AddAssign + Premultiply,\n C::Scalar: AddAssign + Real,"],["impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Oklch<T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Okhsl<T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Luma<S, T>> for Luma<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<T> for Okhsv<T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<T> for Okhwb<T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<T> for Lab<Wp, T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<T> for Oklab<T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<T> for Lch<Wp, T>where\n T: AddAssign + Clone,"],["impl<T> AddAssign<Okhwb<T>> for Okhwb<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where\n T: AddAssign,"],["impl<T> AddAssign<Oklab<T>> for Oklab<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: AddAssign,"],["impl<C> AddAssign<f64> for PreAlpha<C>where\n C: AddAssign<f64> + Premultiply<Scalar = f64>,"],["impl AddAssign<RgbHue<f64>> for f64"],["impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<OklabHue<T>> for OklabHue<T>"],["impl<S, T> AddAssign<T> for Luma<S, T>where\n T: AddAssign + Clone,"],["impl<S, T> AddAssign<T> for Hsl<S, T>where\n T: AddAssign + Clone,"],["impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: AddAssign,"],["impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where\n T: AddAssign,"],["impl<T: AddAssign> AddAssign<T> for LabHue<T>"],["impl AddAssign<OklabHue<f64>> for f64"],["impl<T: AddAssign> AddAssign<LuvHue<T>> for LuvHue<T>"],["impl<S, T> AddAssign<Rgb<S, T>> for Rgb<S, T>where\n T: AddAssign,"],["impl AddAssign<LuvHue<f64>> for f64"],["impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<Okhsv<T>> for Okhsv<T>where\n T: AddAssign,"],["impl<S, T> AddAssign<T> for Hwb<S, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<T> for OklabHue<T>"],["impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where\n T: AddAssign + Clone,"],["impl AddAssign<OklabHue<f32>> for f32"],["impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<T> for RgbHue<T>"],["impl AddAssign<LuvHue<f32>> for f32"],["impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: AddAssign,"],["impl<T> AddAssign<Oklch<T>> for Oklch<T>where\n T: AddAssign,"],["impl<Wp, T> AddAssign<T> for Luv<Wp, T>where\n T: AddAssign + Clone,"],["impl<C> AddAssign<f32> for PreAlpha<C>where\n C: AddAssign<f32> + Premultiply<Scalar = f32>,"],["impl<S, T> AddAssign<T> for Hsv<S, T>where\n T: AddAssign + Clone,"],["impl AddAssign<RgbHue<f32>> for f32"],["impl<T: AddAssign> AddAssign<T> for LuvHue<T>"],["impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: AddAssign,"],["impl AddAssign<LabHue<f32>> for f32"],["impl<T> AddAssign<Okhsl<T>> for Okhsl<T>where\n T: AddAssign,"],["impl<T, C> AddAssign<T> for Alpha<C, T>where\n T: AddAssign + Clone,\n C: AddAssign<T>,"],["impl<S, T> AddAssign<T> for Rgb<S, T>where\n T: AddAssign + Clone,"],["impl<T: AddAssign> AddAssign<RgbHue<T>> for RgbHue<T>"],["impl<T: AddAssign> AddAssign<LabHue<T>> for LabHue<T>"],["impl<C, T> AddAssign<Alpha<C, T>> for Alpha<C, T>where\n C: AddAssign,\n T: AddAssign,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.Div.js b/implementors/core/ops/arith/trait.Div.js index 433e79883..2b936b0b6 100644 --- a/implementors/core/ops/arith/trait.Div.js +++ b/implementors/core/ops/arith/trait.Div.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<C, T> Div<Alpha<C, T>> for Alpha<C, T>where\n C: Div,\n T: Div,"],["impl<S, T> Div<T> for Luma<S, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Div<Output = T>,"],["impl<S, T> Div<T> for Rgb<S, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<T> for Luv<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<T> for Lab<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<S, T> Div<Rgb<S, T>> for Rgb<S, T>where\n T: Div<Output = T>,"],["impl<T> Div<T> for Oklab<T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<T> for Xyz<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<T, C> Div<T> for Alpha<C, T>where\n T: Div + Clone,\n C: Div<T>,"],["impl<S, T> Div<Luma<S, T>> for Luma<S, T>where\n T: Div<Output = T>,"],["impl<C> Div<PreAlpha<C>> for PreAlpha<C>where\n C: Div<Output = C> + Premultiply,\n C::Scalar: Div<Output = C::Scalar>,"],["impl<Wp, T> Div<T> for Yxy<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where\n T: Div<Output = T>,"],["impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where\n T: Div<Output = T>,"],["impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Div<Output = T>,"],["impl<C> Div<f32> for PreAlpha<C>where\n C: Div<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<C> Div<f64> for PreAlpha<C>where\n C: Div<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<T> Div<Oklab<T>> for Oklab<T>where\n T: Div<Output = T>,"]] +"palette":[["impl<C, T> Div<Alpha<C, T>> for Alpha<C, T>where\n C: Div,\n T: Div,"],["impl<S, T> Div<T> for Luma<S, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Div<Output = T>,"],["impl<Wp, T> Div<T> for Luv<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<T> for Lab<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<S, T> Div<T> for Rgb<S, T>where\n T: Div<Output = T> + Clone,"],["impl<T> Div<T> for Oklab<T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<T> for Xyz<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<S, T> Div<Rgb<S, T>> for Rgb<S, T>where\n T: Div<Output = T>,"],["impl<T, C> Div<T> for Alpha<C, T>where\n T: Div + Clone,\n C: Div<T>,"],["impl<S, T> Div<Luma<S, T>> for Luma<S, T>where\n T: Div<Output = T>,"],["impl<C> Div<PreAlpha<C>> for PreAlpha<C>where\n C: Div<Output = C> + Premultiply,\n C::Scalar: Div<Output = C::Scalar>,"],["impl<Wp, T> Div<T> for Yxy<Wp, T>where\n T: Div<Output = T> + Clone,"],["impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where\n T: Div<Output = T>,"],["impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where\n T: Div<Output = T>,"],["impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Div<Output = T>,"],["impl<C> Div<f32> for PreAlpha<C>where\n C: Div<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<C> Div<f64> for PreAlpha<C>where\n C: Div<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<T> Div<Oklab<T>> for Oklab<T>where\n T: Div<Output = T>,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.DivAssign.js b/implementors/core/ops/arith/trait.DivAssign.js index 3eaba2fc9..d5cefee0c 100644 --- a/implementors/core/ops/arith/trait.DivAssign.js +++ b/implementors/core/ops/arith/trait.DivAssign.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<C> DivAssign<f32> for PreAlpha<C>where\n C: DivAssign<f32> + Premultiply<Scalar = f32>,"],["impl<Wp, T> DivAssign<T> for Lab<Wp, T>where\n T: DivAssign + Clone,"],["impl<T, C> DivAssign<T> for Alpha<C, T>where\n T: DivAssign + Clone,\n C: DivAssign<T>,"],["impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: DivAssign,"],["impl<C> DivAssign<PreAlpha<C>> for PreAlpha<C>where\n C: DivAssign + Premultiply,\n C::Scalar: DivAssign + Real,"],["impl<S, T> DivAssign<T> for Luma<S, T>where\n T: DivAssign + Clone,"],["impl<S, T> DivAssign<Rgb<S, T>> for Rgb<S, T>where\n T: DivAssign,"],["impl<T> DivAssign<Oklab<T>> for Oklab<T>where\n T: DivAssign,"],["impl<C> DivAssign<f64> for PreAlpha<C>where\n C: DivAssign<f64> + Premultiply<Scalar = f64>,"],["impl<S, T> DivAssign<Luma<S, T>> for Luma<S, T>where\n T: DivAssign,"],["impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: DivAssign,"],["impl<Wp, T> DivAssign<T> for Luv<Wp, T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where\n T: DivAssign + Clone,"],["impl<T> DivAssign<T> for Oklab<T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: DivAssign,"],["impl<C, T> DivAssign<Alpha<C, T>> for Alpha<C, T>where\n C: DivAssign,\n T: DivAssign,"],["impl<S, T> DivAssign<T> for Rgb<S, T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: DivAssign,"]] +"palette":[["impl<C> DivAssign<f32> for PreAlpha<C>where\n C: DivAssign<f32> + Premultiply<Scalar = f32>,"],["impl<Wp, T> DivAssign<T> for Lab<Wp, T>where\n T: DivAssign + Clone,"],["impl<T, C> DivAssign<T> for Alpha<C, T>where\n T: DivAssign + Clone,\n C: DivAssign<T>,"],["impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: DivAssign,"],["impl<C> DivAssign<PreAlpha<C>> for PreAlpha<C>where\n C: DivAssign + Premultiply,\n C::Scalar: DivAssign + Real,"],["impl<S, T> DivAssign<T> for Luma<S, T>where\n T: DivAssign + Clone,"],["impl<T> DivAssign<Oklab<T>> for Oklab<T>where\n T: DivAssign,"],["impl<C> DivAssign<f64> for PreAlpha<C>where\n C: DivAssign<f64> + Premultiply<Scalar = f64>,"],["impl<S, T> DivAssign<Luma<S, T>> for Luma<S, T>where\n T: DivAssign,"],["impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: DivAssign,"],["impl<Wp, T> DivAssign<T> for Luv<Wp, T>where\n T: DivAssign + Clone,"],["impl<S, T> DivAssign<Rgb<S, T>> for Rgb<S, T>where\n T: DivAssign,"],["impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where\n T: DivAssign + Clone,"],["impl<T> DivAssign<T> for Oklab<T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: DivAssign,"],["impl<C, T> DivAssign<Alpha<C, T>> for Alpha<C, T>where\n C: DivAssign,\n T: DivAssign,"],["impl<S, T> DivAssign<T> for Rgb<S, T>where\n T: DivAssign + Clone,"],["impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: DivAssign,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.Mul.js b/implementors/core/ops/arith/trait.Mul.js index bb91c3e9c..d1f60abe6 100644 --- a/implementors/core/ops/arith/trait.Mul.js +++ b/implementors/core/ops/arith/trait.Mul.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<S, T> Mul<Luma<S, T>> for Luma<S, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Xyz<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<PreAlpha<C>> for PreAlpha<C>where\n C: Mul<Output = C> + Premultiply,\n C::Scalar: Mul<Output = C::Scalar>,"],["impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Lab<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<S, T> Mul<T> for Rgb<S, T>where\n T: Mul<Output = T> + Clone,"],["impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Mul<Output = T>,"],["impl<S, T> Mul<Rgb<S, T>> for Rgb<S, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Yxy<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<T> Mul<Oklab<T>> for Oklab<T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where\n T: Mul<Output = T>,"],["impl<T, C> Mul<T> for Alpha<C, T>where\n T: Mul + Clone,\n C: Mul<T>,"],["impl<Wp, T> Mul<T> for Luv<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<S, T> Mul<T> for Luma<S, T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<f64> for PreAlpha<C>where\n C: Mul<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<C, T> Mul<Alpha<C, T>> for Alpha<C, T>where\n C: Mul,\n T: Mul,"],["impl<T> Mul<T> for Oklab<T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<f32> for PreAlpha<C>where\n C: Mul<f32, Output = C> + Premultiply<Scalar = f32>,"]] +"palette":[["impl<S, T> Mul<Luma<S, T>> for Luma<S, T>where\n T: Mul<Output = T>,"],["impl<S, T> Mul<Rgb<S, T>> for Rgb<S, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Xyz<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<PreAlpha<C>> for PreAlpha<C>where\n C: Mul<Output = C> + Premultiply,\n C::Scalar: Mul<Output = C::Scalar>,"],["impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Lab<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<T> for Yxy<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<T> Mul<Oklab<T>> for Oklab<T>where\n T: Mul<Output = T>,"],["impl<S, T> Mul<T> for Rgb<S, T>where\n T: Mul<Output = T> + Clone,"],["impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Mul<Output = T>,"],["impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where\n T: Mul<Output = T>,"],["impl<T, C> Mul<T> for Alpha<C, T>where\n T: Mul + Clone,\n C: Mul<T>,"],["impl<Wp, T> Mul<T> for Luv<Wp, T>where\n T: Mul<Output = T> + Clone,"],["impl<S, T> Mul<T> for Luma<S, T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<f64> for PreAlpha<C>where\n C: Mul<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<C, T> Mul<Alpha<C, T>> for Alpha<C, T>where\n C: Mul,\n T: Mul,"],["impl<T> Mul<T> for Oklab<T>where\n T: Mul<Output = T> + Clone,"],["impl<C> Mul<f32> for PreAlpha<C>where\n C: Mul<f32, Output = C> + Premultiply<Scalar = f32>,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.MulAssign.js b/implementors/core/ops/arith/trait.MulAssign.js index 8f29409b2..278260feb 100644 --- a/implementors/core/ops/arith/trait.MulAssign.js +++ b/implementors/core/ops/arith/trait.MulAssign.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<Wp, T> MulAssign<T> for Luv<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<Luma<S, T>> for Luma<S, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: MulAssign,"],["impl<T> MulAssign<Oklab<T>> for Oklab<T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: MulAssign,"],["impl<C, T> MulAssign<Alpha<C, T>> for Alpha<C, T>where\n C: MulAssign,\n T: MulAssign,"],["impl<C> MulAssign<PreAlpha<C>> for PreAlpha<C>where\n C: MulAssign + Premultiply,\n C::Scalar: MulAssign + Real,"],["impl<C> MulAssign<f32> for PreAlpha<C>where\n C: MulAssign<f32> + Premultiply<Scalar = f32>,"],["impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<T> for Luma<S, T>where\n T: MulAssign + Clone,"],["impl<C> MulAssign<f64> for PreAlpha<C>where\n C: MulAssign<f64> + Premultiply<Scalar = f64>,"],["impl<T> MulAssign<T> for Oklab<T>where\n T: MulAssign + Clone,"],["impl<T, C> MulAssign<T> for Alpha<C, T>where\n T: MulAssign + Clone,\n C: MulAssign<T>,"],["impl<S, T> MulAssign<Rgb<S, T>> for Rgb<S, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<T> for Lab<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<T> for Rgb<S, T>where\n T: MulAssign + Clone,"],["impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where\n T: MulAssign + Clone,"]] +"palette":[["impl<Wp, T> MulAssign<T> for Luv<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<Luma<S, T>> for Luma<S, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: MulAssign,"],["impl<T> MulAssign<Oklab<T>> for Oklab<T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: MulAssign,"],["impl<C, T> MulAssign<Alpha<C, T>> for Alpha<C, T>where\n C: MulAssign,\n T: MulAssign,"],["impl<C> MulAssign<PreAlpha<C>> for PreAlpha<C>where\n C: MulAssign + Premultiply,\n C::Scalar: MulAssign + Real,"],["impl<C> MulAssign<f32> for PreAlpha<C>where\n C: MulAssign<f32> + Premultiply<Scalar = f32>,"],["impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: MulAssign,"],["impl<S, T> MulAssign<T> for Rgb<S, T>where\n T: MulAssign + Clone,"],["impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<T> for Luma<S, T>where\n T: MulAssign + Clone,"],["impl<C> MulAssign<f64> for PreAlpha<C>where\n C: MulAssign<f64> + Premultiply<Scalar = f64>,"],["impl<T> MulAssign<T> for Oklab<T>where\n T: MulAssign + Clone,"],["impl<T, C> MulAssign<T> for Alpha<C, T>where\n T: MulAssign + Clone,\n C: MulAssign<T>,"],["impl<Wp, T> MulAssign<T> for Lab<Wp, T>where\n T: MulAssign + Clone,"],["impl<S, T> MulAssign<Rgb<S, T>> for Rgb<S, T>where\n T: MulAssign,"],["impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where\n T: MulAssign + Clone,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.Sub.js b/implementors/core/ops/arith/trait.Sub.js index 15ebc4224..1703fd798 100644 --- a/implementors/core/ops/arith/trait.Sub.js +++ b/implementors/core/ops/arith/trait.Sub.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<Wp, T> Sub<T> for Lch<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<Okhwb<T>> for Okhwb<T>where\n T: Sub<Output = T>,"],["impl Sub<RgbHue<f32>> for f32"],["impl<Wp, T> Sub<T> for Hsluv<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<Oklch<T>> for Oklch<T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<T> for Okhsl<T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Luma<S, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<OklabHue<f64>> for f64"],["impl Sub<LuvHue<f64>> for f64"],["impl<C, T> Sub<Alpha<C, T>> for Alpha<C, T>where\n C: Sub,\n T: Sub,"],["impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Lab<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<Okhsl<T>> for Okhsl<T>where\n T: Sub<Output = T>,"],["impl<T> Sub<T> for Oklch<T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<LabHue<f64>> for f64"],["impl<Wp, T> Sub<T> for Xyz<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T: Sub<Output = T>> Sub<T> for OklabHue<T>"],["impl<T: Sub<Output = T>> Sub<LabHue<T>> for LabHue<T>"],["impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Sub<Output = T>,"],["impl<C> Sub<PreAlpha<C>> for PreAlpha<C>where\n C: Sub<Output = C> + Premultiply,\n C::Scalar: Sub<Output = C::Scalar>,"],["impl<T: Sub<Output = T>> Sub<T> for LuvHue<T>"],["impl<T> Sub<Okhsv<T>> for Okhsv<T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<Oklab<T>> for Oklab<T>where\n T: Sub<Output = T>,"],["impl<S, T> Sub<Rgb<S, T>> for Rgb<S, T>where\n T: Sub<Output = T>,"],["impl<T: Sub<Output = T>> Sub<RgbHue<T>> for RgbHue<T>"],["impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: Sub<Output = T>,"],["impl Sub<OklabHue<f32>> for f32"],["impl<T> Sub<T> for Oklab<T>where\n T: Sub<Output = T> + Clone,"],["impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Luv<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Yxy<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<LuvHue<f32>> for f32"],["impl<C> Sub<f32> for PreAlpha<C>where\n C: Sub<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<S, T> Sub<T> for Hwb<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<T> for Okhwb<T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Hsv<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Rgb<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<T, C> Sub<T> for Alpha<C, T>where\n T: Sub + Clone,\n C: Sub<T>,"],["impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where\n T: Sub<Output = T>,"],["impl<T: Sub<Output = T>> Sub<OklabHue<T>> for OklabHue<T>"],["impl<C> Sub<f64> for PreAlpha<C>where\n C: Sub<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<T: Sub<Output = T>> Sub<T> for LabHue<T>"],["impl<T: Sub<Output = T>> Sub<T> for RgbHue<T>"],["impl<T> Sub<T> for Okhsv<T>where\n T: Sub<Output = T> + Clone,"],["impl<T: Sub<Output = T>> Sub<LuvHue<T>> for LuvHue<T>"],["impl<S, T> Sub<Luma<S, T>> for Luma<S, T>where\n T: Sub<Output = T>,"],["impl<S, T> Sub<T> for Hsl<S, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<RgbHue<f64>> for f64"],["impl Sub<LabHue<f32>> for f32"],["impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Lchuv<Wp, T>where\n T: Sub<Output = T> + Clone,"]] +"palette":[["impl<Wp, T> Sub<T> for Lch<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<Okhwb<T>> for Okhwb<T>where\n T: Sub<Output = T>,"],["impl Sub<RgbHue<f32>> for f32"],["impl<Wp, T> Sub<T> for Hsluv<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<Oklch<T>> for Oklch<T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<T> for Okhsl<T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Luma<S, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<OklabHue<f64>> for f64"],["impl Sub<LuvHue<f64>> for f64"],["impl<C, T> Sub<Alpha<C, T>> for Alpha<C, T>where\n C: Sub,\n T: Sub,"],["impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Lab<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<Okhsl<T>> for Okhsl<T>where\n T: Sub<Output = T>,"],["impl<T> Sub<T> for Oklch<T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<LabHue<f64>> for f64"],["impl<Wp, T> Sub<T> for Xyz<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<T: Sub<Output = T>> Sub<T> for OklabHue<T>"],["impl<T: Sub<Output = T>> Sub<LabHue<T>> for LabHue<T>"],["impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: Sub<Output = T>,"],["impl<C> Sub<PreAlpha<C>> for PreAlpha<C>where\n C: Sub<Output = C> + Premultiply,\n C::Scalar: Sub<Output = C::Scalar>,"],["impl<T: Sub<Output = T>> Sub<T> for LuvHue<T>"],["impl<T> Sub<Okhsv<T>> for Okhsv<T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: Sub<Output = T>,"],["impl<T> Sub<Oklab<T>> for Oklab<T>where\n T: Sub<Output = T>,"],["impl<T: Sub<Output = T>> Sub<RgbHue<T>> for RgbHue<T>"],["impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: Sub<Output = T>,"],["impl Sub<OklabHue<f32>> for f32"],["impl<T> Sub<T> for Oklab<T>where\n T: Sub<Output = T> + Clone,"],["impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Luv<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Yxy<Wp, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<LuvHue<f32>> for f32"],["impl<C> Sub<f32> for PreAlpha<C>where\n C: Sub<f32, Output = C> + Premultiply<Scalar = f32>,"],["impl<S, T> Sub<T> for Hwb<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<T> Sub<T> for Okhwb<T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Hsv<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<S, T> Sub<T> for Rgb<S, T>where\n T: Sub<Output = T> + Clone,"],["impl<T, C> Sub<T> for Alpha<C, T>where\n T: Sub + Clone,\n C: Sub<T>,"],["impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where\n T: Sub<Output = T>,"],["impl<T: Sub<Output = T>> Sub<OklabHue<T>> for OklabHue<T>"],["impl<C> Sub<f64> for PreAlpha<C>where\n C: Sub<f64, Output = C> + Premultiply<Scalar = f64>,"],["impl<T: Sub<Output = T>> Sub<T> for LabHue<T>"],["impl<T: Sub<Output = T>> Sub<T> for RgbHue<T>"],["impl<T> Sub<T> for Okhsv<T>where\n T: Sub<Output = T> + Clone,"],["impl<T: Sub<Output = T>> Sub<LuvHue<T>> for LuvHue<T>"],["impl<S, T> Sub<Luma<S, T>> for Luma<S, T>where\n T: Sub<Output = T>,"],["impl<S, T> Sub<T> for Hsl<S, T>where\n T: Sub<Output = T> + Clone,"],["impl Sub<RgbHue<f64>> for f64"],["impl<S, T> Sub<Rgb<S, T>> for Rgb<S, T>where\n T: Sub<Output = T>,"],["impl Sub<LabHue<f32>> for f32"],["impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where\n T: Sub<Output = T>,"],["impl<Wp, T> Sub<T> for Lchuv<Wp, T>where\n T: Sub<Output = T> + Clone,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/ops/arith/trait.SubAssign.js b/implementors/core/ops/arith/trait.SubAssign.js index 5314c00c6..36f10b334 100644 --- a/implementors/core/ops/arith/trait.SubAssign.js +++ b/implementors/core/ops/arith/trait.SubAssign.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl SubAssign<OklabHue<f32>> for f32"],["impl<Wp, T> SubAssign<T> for Lab<Wp, T>where\n T: SubAssign + Clone,"],["impl SubAssign<LuvHue<f32>> for f32"],["impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where\n T: SubAssign,"],["impl<C, T> SubAssign<Alpha<C, T>> for Alpha<C, T>where\n C: SubAssign,\n T: SubAssign,"],["impl<T> SubAssign<Okhsv<T>> for Okhsv<T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for LabHue<T>"],["impl<S, T> SubAssign<Rgb<S, T>> for Rgb<S, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where\n T: SubAssign,"],["impl<T> SubAssign<T> for Oklch<T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<T> for Hsl<S, T>where\n T: SubAssign + Clone,"],["impl<T> SubAssign<Oklab<T>> for Oklab<T>where\n T: SubAssign,"],["impl<T> SubAssign<T> for Okhsv<T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<T> for Lch<Wp, T>where\n T: SubAssign + Clone,"],["impl<T, C> SubAssign<T> for Alpha<C, T>where\n T: SubAssign + Clone,\n C: SubAssign<T>,"],["impl<C> SubAssign<f64> for PreAlpha<C>where\n C: SubAssign<f64> + Premultiply<Scalar = f64>,"],["impl<T: SubAssign> SubAssign<LuvHue<T>> for LuvHue<T>"],["impl SubAssign<OklabHue<f64>> for f64"],["impl<T: SubAssign> SubAssign<RgbHue<T>> for RgbHue<T>"],["impl<S, T> SubAssign<T> for Luma<S, T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<T> for Rgb<S, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: SubAssign,"],["impl SubAssign<RgbHue<f64>> for f64"],["impl SubAssign<RgbHue<f32>> for f32"],["impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: SubAssign,"],["impl<T> SubAssign<Okhwb<T>> for Okhwb<T>where\n T: SubAssign,"],["impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where\n T: SubAssign,"],["impl<S, T> SubAssign<T> for Hwb<S, T>where\n T: SubAssign + Clone,"],["impl<T: SubAssign> SubAssign<T> for OklabHue<T>"],["impl SubAssign<LabHue<f32>> for f32"],["impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for RgbHue<T>"],["impl<T> SubAssign<T> for Okhwb<T>where\n T: SubAssign + Clone,"],["impl SubAssign<LabHue<f64>> for f64"],["impl<T> SubAssign<T> for Oklab<T>where\n T: SubAssign + Clone,"],["impl<T> SubAssign<Okhsl<T>> for Okhsl<T>where\n T: SubAssign,"],["impl<C> SubAssign<f32> for PreAlpha<C>where\n C: SubAssign<f32> + Premultiply<Scalar = f32>,"],["impl<C> SubAssign<PreAlpha<C>> for PreAlpha<C>where\n C: SubAssign + Premultiply,\n C::Scalar: SubAssign + Real,"],["impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for LuvHue<T>"],["impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where\n T: SubAssign + Clone,"],["impl<T: SubAssign> SubAssign<OklabHue<T>> for OklabHue<T>"],["impl<T: SubAssign> SubAssign<LabHue<T>> for LabHue<T>"],["impl<S, T> SubAssign<T> for Hsv<S, T>where\n T: SubAssign + Clone,"],["impl SubAssign<LuvHue<f64>> for f64"],["impl<T> SubAssign<T> for Okhsl<T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<Luma<S, T>> for Luma<S, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<T> for Luv<Wp, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: SubAssign,"],["impl<T> SubAssign<Oklch<T>> for Oklch<T>where\n T: SubAssign,"]] +"palette":[["impl SubAssign<OklabHue<f32>> for f32"],["impl<Wp, T> SubAssign<T> for Lab<Wp, T>where\n T: SubAssign + Clone,"],["impl SubAssign<LuvHue<f32>> for f32"],["impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where\n T: SubAssign,"],["impl<C, T> SubAssign<Alpha<C, T>> for Alpha<C, T>where\n C: SubAssign,\n T: SubAssign,"],["impl<T> SubAssign<Okhsv<T>> for Okhsv<T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for LabHue<T>"],["impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where\n T: SubAssign,"],["impl<T> SubAssign<T> for Oklch<T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<T> for Hsl<S, T>where\n T: SubAssign + Clone,"],["impl<T> SubAssign<Oklab<T>> for Oklab<T>where\n T: SubAssign,"],["impl<S, T> SubAssign<T> for Rgb<S, T>where\n T: SubAssign + Clone,"],["impl<T> SubAssign<T> for Okhsv<T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<T> for Lch<Wp, T>where\n T: SubAssign + Clone,"],["impl<T, C> SubAssign<T> for Alpha<C, T>where\n T: SubAssign + Clone,\n C: SubAssign<T>,"],["impl<C> SubAssign<f64> for PreAlpha<C>where\n C: SubAssign<f64> + Premultiply<Scalar = f64>,"],["impl<T: SubAssign> SubAssign<LuvHue<T>> for LuvHue<T>"],["impl SubAssign<OklabHue<f64>> for f64"],["impl<T: SubAssign> SubAssign<RgbHue<T>> for RgbHue<T>"],["impl<S, T> SubAssign<T> for Luma<S, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where\n T: SubAssign,"],["impl SubAssign<RgbHue<f64>> for f64"],["impl SubAssign<RgbHue<f32>> for f32"],["impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where\n T: SubAssign,"],["impl<T> SubAssign<Okhwb<T>> for Okhwb<T>where\n T: SubAssign,"],["impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where\n T: SubAssign,"],["impl<S, T> SubAssign<T> for Hwb<S, T>where\n T: SubAssign + Clone,"],["impl<T: SubAssign> SubAssign<T> for OklabHue<T>"],["impl SubAssign<LabHue<f32>> for f32"],["impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where\n T: SubAssign,"],["impl<S, T> SubAssign<Rgb<S, T>> for Rgb<S, T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for RgbHue<T>"],["impl<T> SubAssign<T> for Okhwb<T>where\n T: SubAssign + Clone,"],["impl SubAssign<LabHue<f64>> for f64"],["impl<T> SubAssign<T> for Oklab<T>where\n T: SubAssign + Clone,"],["impl<T> SubAssign<Okhsl<T>> for Okhsl<T>where\n T: SubAssign,"],["impl<C> SubAssign<f32> for PreAlpha<C>where\n C: SubAssign<f32> + Premultiply<Scalar = f32>,"],["impl<C> SubAssign<PreAlpha<C>> for PreAlpha<C>where\n C: SubAssign + Premultiply,\n C::Scalar: SubAssign + Real,"],["impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where\n T: SubAssign,"],["impl<T: SubAssign> SubAssign<T> for LuvHue<T>"],["impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where\n T: SubAssign + Clone,"],["impl<T: SubAssign> SubAssign<OklabHue<T>> for OklabHue<T>"],["impl<T: SubAssign> SubAssign<LabHue<T>> for LabHue<T>"],["impl<S, T> SubAssign<T> for Hsv<S, T>where\n T: SubAssign + Clone,"],["impl SubAssign<LuvHue<f64>> for f64"],["impl<T> SubAssign<T> for Okhsl<T>where\n T: SubAssign + Clone,"],["impl<S, T> SubAssign<Luma<S, T>> for Luma<S, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<T> for Luv<Wp, T>where\n T: SubAssign + Clone,"],["impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where\n T: SubAssign,"],["impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where\n T: SubAssign,"],["impl<T> SubAssign<Oklch<T>> for Oklch<T>where\n T: SubAssign,"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/implementors/core/str/traits/trait.FromStr.js b/implementors/core/str/traits/trait.FromStr.js index b9d8aca77..3d250280a 100644 --- a/implementors/core/str/traits/trait.FromStr.js +++ b/implementors/core/str/traits/trait.FromStr.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"palette":[["impl<S> FromStr for Rgba<S, u8>"],["impl<S> FromStr for Rgb<S, u8>"]] +"palette":[["impl<S> FromStr for Rgb<S, u8>"],["impl<S> FromStr for Rgba<S, u8>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/palette/alpha/struct.Alpha.html b/palette/alpha/struct.Alpha.html index ae4ce5600..bd8a6445e 100644 --- a/palette/alpha/struct.Alpha.html +++ b/palette/alpha/struct.Alpha.html @@ -89,15 +89,15 @@

Access
source§

impl<C: Premultiply> Alpha<C, C::Scalar>

source

pub fn premultiply(self) -> PreAlpha<C>

Alpha mask the color by its transparency.

source§

impl<C, T: Stimulus> Alpha<C, T>

source

pub fn min_alpha() -> T

Return the alpha value minimum.

source

pub fn max_alpha() -> T

Return the alpha value maximum.

-
source§

impl<T, A> Alpha<Hsl<Srgb, T>, A>

Hsla implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hsl<Srgb, T>, A>

Hsla implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, saturation: T, lightness: T, alpha: A ) -> Self

Create an sRGB HSL color with transparency. This method can be used instead of Hsla::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, saturation: T, lightness: T, @@ -105,14 +105,14 @@

Access ) -> Self

source§

impl<S, T, A> Alpha<Hsl<S, T>, A>

Hsla implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hsl<S, T>, A>

Hsla implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, saturation: T, lightness: T, alpha: A ) -> Self

Create an HSL color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, saturation: T, lightness: T, @@ -120,31 +120,31 @@

Access ) -> Self

source

pub fn into_format<U, B>(self) -> Alpha<Hsl<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hsl<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hsl<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hsl<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, lightness, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, lightness, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, lightness, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, lightness, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hsl<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsl<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hsl<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsl<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsl<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsl<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsl<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsl<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hsl<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hsl<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsl<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -153,7 +153,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsl<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -162,38 +162,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hsl<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsl<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsl<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hsl<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsl<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsl<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, T>, A>

Hsluva implementations.

-
source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency.

-
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, T>, A>

Hsluva implementations.

+
source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency.

+
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency. This is the same as Hsluva::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (LuvHue<T>, T, T, A)

Convert to a (hue, saturation, l, alpha) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (LuvHue<T>, T, T, A)

Convert to a (hue, saturation, l, alpha) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (hue, saturation, l, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, l, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsluv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsluv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Hsluv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Hsluv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsluv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -202,7 +202,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsluv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -211,24 +211,24 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsluv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsluv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T, A> Alpha<Hsv<Srgb, T>, A>

Hsva implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hsv<Srgb, T>, A>

Hsva implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, saturation: T, value: T, alpha: A ) -> Self

Create an sRGB HSV color with transparency. This method can be used instead of Hsva::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, saturation: T, value: T, @@ -236,14 +236,14 @@

Access ) -> Self

source§

impl<S, T, A> Alpha<Hsv<S, T>, A>

Hsva implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hsv<S, T>, A>

Hsva implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, saturation: T, value: T, alpha: A ) -> Self

Create an HSV color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, saturation: T, value: T, @@ -251,31 +251,31 @@

Access ) -> Self

source

pub fn into_format<U, B>(self) -> Alpha<Hsv<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hsv<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hsv<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hsv<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, value, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, value, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, value, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, value, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hsv<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsv<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hsv<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsv<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsv<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsv<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsv<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsv<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hsv<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hsv<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsv<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -284,7 +284,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsv<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -293,69 +293,69 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hsv<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsv<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsv<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hsv<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsv<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsv<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T, A> Alpha<Hwb<Srgb, T>, A>

Hwba implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hwb<Srgb, T>, A>

Hwba implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, whiteness: T, blackness: T, alpha: A ) -> Self

Create an sRGB HWB color with transparency. This method can be used instead of Hwba::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, whiteness: T, blackness: T, alpha: A ) -> Self

Create an sRGB HWB color with transparency. This is the same as Hwba::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T, A> Alpha<Hwb<S, T>, A>

Hwba implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hwb<S, T>, A>

Hwba implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, whiteness: T, blackness: T, alpha: A ) -> Self

Create an HWB color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, whiteness: T, blackness: T, alpha: A ) -> Self

Create an HWB color with transparency. This is the same as Hwba::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U, B>(self) -> Alpha<Hwb<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hwb<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hwb<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hwb<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, whiteness, blackness, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, whiteness, blackness, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, whiteness, blackness, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, whiteness, blackness, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hwb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hwb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hwb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hwb<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hwb<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hwb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hwb<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hwb<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hwb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hwb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hwb<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -364,7 +364,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hwb<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -373,34 +373,34 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hwb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hwb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hwb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hwb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hwb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hwb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, T>, A>

Laba implementations.

-
source

pub const fn new(l: T, a: T, b: T, alpha: A) -> Self

Create a CIE L*a*b* with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (L\*, a\*, b\*, alpha) tuple.

-
source

pub fn from_components((l, a, b, alpha): (T, T, T, A)) -> Self

Convert from a (L\*, a\*, b\*, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lab<Wp, T>, A>

Laba implementations.

+
source

pub const fn new(l: T, a: T, b: T, alpha: A) -> Self

Create a CIE L*a*b* with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (L\*, a\*, b\*, alpha) tuple.

+
source

pub fn from_components((l, a, b, alpha): (T, T, T, A)) -> Self

Convert from a (L\*, a\*, b\*, alpha) tuple.

+
source§

impl<Wp, T, A> Alpha<Lab<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lab<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lab<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lab<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lab<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lab<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lab<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lab<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lab<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -409,7 +409,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lab<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -418,38 +418,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lab<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lab<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lab<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lab<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lab<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, T>, A>

Lcha implementations.

-
source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*h° color with transparency.

-
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>, alpha: A) -> Self

Create a CIE L*C*h° color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Lch<Wp, T>, A>

Lcha implementations.

+
source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*h° color with transparency.

+
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>, alpha: A) -> Self

Create a CIE L*C*h° color with transparency. This is the same as Lcha::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LabHue<T>, A)

Convert to a (L\*, C\*, h°, alpha) tuple.

-
source

pub fn from_components<H: Into<LabHue<T>>>( +

source

pub fn into_components(self) -> (T, T, LabHue<T>, A)

Convert to a (L\*, C\*, h°, alpha) tuple.

+
source

pub fn from_components<H: Into<LabHue<T>>>( (l, chroma, hue, alpha): (T, T, H, A) ) -> Self

Convert from a (L\*, C\*, h°, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lch<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lch<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lch<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lch<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lch<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lch<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lch<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lch<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lch<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -458,7 +458,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -467,38 +467,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lch<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lch<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lch<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lch<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lch<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, T>, A>

Lchuva implementations.

-
source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency.

-
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, T>, A>

Lchuva implementations.

+
source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency.

+
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency. This is the same as Lchuva::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LuvHue<T>, A)

Convert to a (L\*, C\*uv, h°uv, alpha) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (T, T, LuvHue<T>, A)

Convert to a (L\*, C\*uv, h°uv, alpha) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (l, chroma, hue, alpha): (T, T, H, A) ) -> Self

Convert from a (L\*, C\*uv, h°uv, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lchuv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lchuv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lchuv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lchuv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lchuv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -507,7 +507,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lchuv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -516,26 +516,26 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lchuv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lchuv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<S, T, A> Alpha<Luma<S, T>, A>

Lumaa implementations.

-
source

pub const fn new(luma: T, alpha: A) -> Self

Create a luminance color with transparency.

-
source

pub fn into_format<U, B>(self) -> Alpha<Luma<S, U>, B>where +

source§

impl<S, T, A> Alpha<Luma<S, T>, A>

Lumaa implementations.

+
source

pub const fn new(luma: T, alpha: A) -> Self

Create a luminance color with transparency.

+
source

pub fn into_format<U, B>(self) -> Alpha<Luma<S, U>, B>where U: FromStimulus<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Luma<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Luma<S, U>, B>) -> Selfwhere T: FromStimulus<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (T, A)

Convert to a (luma, alpha) tuple.

-
source

pub fn from_components((luma, alpha): (T, A)) -> Self

Convert from a (luma, alpha) tuple.

-
source§

impl<S> Alpha<Luma<S, u8>, u8>

source

pub fn into_u16<O>(self) -> u16where +

source

pub fn into_components(self) -> (T, A)

Convert to a (luma, alpha) tuple.

+
source

pub fn from_components((luma, alpha): (T, A)) -> Self

Convert from a (luma, alpha) tuple.

+
source§

impl<S> Alpha<Luma<S, u8>, u8>

source

pub fn into_u16<O>(self) -> u16where O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert to a packed u16 with with a specific component order.

See Packed for more details.

-
source

pub fn from_u16<O>(color: u16) -> Selfwhere +

source

pub fn from_u16<O>(color: u16) -> Selfwhere O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert from a packed u16 with a specific component order.

See Packed for more details.

-
source§

impl<S, T, A> Alpha<Luma<S, T>, A>where - S: LumaStandard,

source

pub fn into_linear<U, B>(self) -> Alpha<Luma<Linear<S::WhitePoint>, U>, B>where +

source§

impl<S, T, A> Alpha<Luma<S, T>, A>where + S: LumaStandard,

source

pub fn into_linear<U, B>(self) -> Alpha<Luma<Linear<S::WhitePoint>, U>, B>where S::TransferFn: IntoLinear<U, T>, B: FromStimulus<A>,

Convert the color to linear luminance with transparency.

Some transfer functions allow the component type to be converted at the @@ -578,7 +578,7 @@

Access let linear: LinLumaa<_, f32> = SrgbLumaa::new(96u8, 38).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U, B>( +

source

pub fn from_linear<U, B>( color: Alpha<Luma<Linear<S::WhitePoint>, U>, B> ) -> Selfwhere S::TransferFn: FromLinear<U, T>, @@ -592,7 +592,7 @@

Access let encoded = SrgbLumaa::<u8>::from_linear(LinLumaa::new(0.95f32, 0.75));

See the transfer function types in the encoding module for details and performance characteristics.

-

source§

impl<Wp, T, A> Alpha<Luma<Linear<Wp>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Luma<St, U>, B>where +

source§

impl<Wp, T, A> Alpha<Luma<Linear<Wp>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Luma<St, U>, B>where St: LumaStandard<WhitePoint = Wp>, St::TransferFn: FromLinear<T, U>, B: FromStimulus<A>,

Convert a linear color to a different encoding with transparency.

@@ -605,7 +605,7 @@

Access let encoded: SrgbLumaa<u8> = LinLumaa::new(0.95f32, 0.75).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, B, St>(color: Alpha<Luma<St, U>, B>) -> Selfwhere +

source

pub fn from_encoding<U, B, St>(color: Alpha<Luma<St, U>, B>) -> Selfwhere St: LumaStandard<WhitePoint = Wp>, St::TransferFn: IntoLinear<T, U>, A: FromStimulus<B>,

Convert to linear luminance from a different encoding with transparency.

@@ -618,21 +618,21 @@

Access let linear = LinLumaa::<_, f32>::from_encoding(SrgbLumaa::new(96u8, 38));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T, A> Alpha<Luma<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where +

source§

impl<S, T, A> Alpha<Luma<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Luma<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luma<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Luma<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where +

source§

impl<S, T, A> Alpha<Luma<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luma<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Luma<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Luma<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Luma<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Luma<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -641,7 +641,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Luma<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -650,34 +650,34 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Luma<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Luma<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Luma<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Luma<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Luma<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Luma<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, T>, A>

Luva implementations.

-
source

pub const fn new(l: T, u: T, v: T, alpha: A) -> Self

Create a CIE L*u*v* color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to u (L\*, u\*, v\*, alpha) tuple.

-
source

pub fn from_components((l, u, v, alpha): (T, T, T, A)) -> Self

Convert from u (L\*, u\*, v\*, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Luv<Wp, T>, A>

Luva implementations.

+
source

pub const fn new(l: T, u: T, v: T, alpha: A) -> Self

Create a CIE L*u*v* color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to u (L\*, u\*, v\*, alpha) tuple.

+
source

pub fn from_components((l, u, v, alpha): (T, T, T, A)) -> Self

Convert from u (L\*, u\*, v\*, alpha) tuple.

+
source§

impl<Wp, T, A> Alpha<Luv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Luv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Luv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Luv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Luv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Luv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Luv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -686,7 +686,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Luv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -695,11 +695,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Luv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Luv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Luv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Luv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Luv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where @@ -791,21 +791,21 @@

Access

source

pub fn from_components<H: Into<OklabHue<T>>>( (hue, saturation, value, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, value, alpha) tuple.

-
source§

impl<T, A> Alpha<Okhsv<&T>, &A>

source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where +

source§

impl<T, A> Alpha<Okhsv<&T>, &A>

source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where +

source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<T, A> Alpha<Okhsv<&mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Okhsv<T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Okhsv<&T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where +

source§

impl<T, A> Alpha<Okhsv<&mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Okhsv<T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Okhsv<&T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where +

source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Ct, Ca> Alpha<Okhsv<Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Ct, Ca> Alpha<Okhsv<Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Okhsv<&<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -814,7 +814,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Okhsv<&mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -823,11 +823,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<T, A> Alpha<Okhsv<Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Okhsv<T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Okhsv<T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where +

source§

impl<T, A> Alpha<Okhsv<Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Okhsv<T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Okhsv<T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

source§

impl<T, A> Alpha<Okhwb<T>, A>

Okhwba implementations.

source

pub fn new<H: Into<OklabHue<T>>>( @@ -979,9 +979,9 @@

Access

source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<S, T, A> Alpha<Rgb<S, T>, A>

Rgba implementations.

-
source

pub const fn new(red: T, green: T, blue: T, alpha: A) -> Self

Non-linear RGB.

-
source

pub fn into_format<U, B>(self) -> Alpha<Rgb<S, U>, B>where +

source§

impl<S, T, A> Alpha<Rgb<S, T>, A>

Rgba implementations.

+
source

pub const fn new(red: T, green: T, blue: T, alpha: A) -> Self

Non-linear RGB.

+
source

pub fn into_format<U, B>(self) -> Alpha<Rgb<S, U>, B>where U: FromStimulus<T>, B: FromStimulus<A>,

Convert the RGBA components into other number types.

@@ -990,7 +990,7 @@

Access let rgba_u8: Srgba<u8> = Srgba::new(0.3, 0.7, 0.2, 0.5).into_format();

See also into_linear and into_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-
source

pub fn from_format<U, B>(color: Alpha<Rgb<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Rgb<S, U>, B>) -> Selfwhere T: FromStimulus<U>, A: FromStimulus<B>,

Convert the RGBA components from other number types.

@@ -999,9 +999,9 @@

Access let rgba_u8 = Srgba::<u8>::from_format(Srgba::new(0.3, 0.7, 0.2, 0.5));

See also from_linear and from_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (red, green, blue, alpha) tuple.

-
source

pub fn from_components((red, green, blue, alpha): (T, T, T, A)) -> Self

Convert from a (red, green, blue, alpha) tuple.

-
source§

impl<S> Alpha<Rgb<S, u8>, u8>

source

pub fn into_u32<O>(self) -> u32where +

source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (red, green, blue, alpha) tuple.

+
source

pub fn from_components((red, green, blue, alpha): (T, T, T, A)) -> Self

Convert from a (red, green, blue, alpha) tuple.

+
source§

impl<S> Alpha<Rgb<S, u8>, u8>

source

pub fn into_u32<O>(self) -> u32where O: ComponentOrder<Rgba<S, u8>, u32>,

Convert to a packed u32 with with specifiable component order.

See Packed for more details.

-
source

pub fn from_u32<O>(color: u32) -> Selfwhere +

source

pub fn from_u32<O>(color: u32) -> Selfwhere O: ComponentOrder<Rgba<S, u8>, u32>,

Convert from a packed u32 with specifiable component order.

See Packed for more details.

-
source§

impl<S: RgbStandard, T, A> Alpha<Rgb<S, T>, A>

source

pub fn into_linear<U, B>(self) -> Alpha<Rgb<Linear<S::Space>, U>, B>where +

source§

impl<S: RgbStandard, T, A> Alpha<Rgb<S, T>, A>

source

pub fn into_linear<U, B>(self) -> Alpha<Rgb<Linear<S::Space>, U>, B>where S::TransferFn: IntoLinear<U, T>, B: FromStimulus<A>,

Convert the color to linear RGB with transparency.

Some transfer functions allow the component type to be converted at the @@ -1043,7 +1043,7 @@

Access let linear: LinSrgba<f32> = Srgba::new(96u8, 127, 0, 38).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U, B>(color: Alpha<Rgb<Linear<S::Space>, U>, B>) -> Selfwhere +

source

pub fn from_linear<U, B>(color: Alpha<Rgb<Linear<S::Space>, U>, B>) -> Selfwhere S::TransferFn: FromLinear<U, T>, A: FromStimulus<B>,

Convert linear RGB to non-linear RGB with transparency.

Some transfer functions allow the component type to be converted at the @@ -1055,7 +1055,7 @@

Access let encoded = Srgba::<u8>::from_linear(LinSrgba::new(0.95f32, 0.90, 0.30, 0.75));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S: RgbSpace, T, A> Alpha<Rgb<Linear<S>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Rgb<St, U>, B>where +

source§

impl<S: RgbSpace, T, A> Alpha<Rgb<Linear<S>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Rgb<St, U>, B>where St: RgbStandard<Space = S>, St::TransferFn: FromLinear<T, U>, B: FromStimulus<A>,

Convert a linear color to a different encoding with transparency.

@@ -1068,7 +1068,7 @@

Access let encoded: Srgba<u8> = LinSrgba::new(0.95f32, 0.90, 0.30, 0.75).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, B, St>(color: Alpha<Rgb<St, U>, B>) -> Selfwhere +

source

pub fn from_encoding<U, B, St>(color: Alpha<Rgb<St, U>, B>) -> Selfwhere St: RgbStandard<Space = S>, St::TransferFn: IntoLinear<T, U>, A: FromStimulus<B>,

Convert RGB from a different encoding to linear with transparency.

@@ -1081,21 +1081,21 @@

Access let linear = LinSrgba::<f32>::from_encoding(Srgba::new(96u8, 127, 0, 38));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T, A> Alpha<Rgb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Rgb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Rgb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Rgb<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Rgb<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Rgb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Rgb<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Rgb<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Rgb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Rgb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Rgb<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1104,7 +1104,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Rgb<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1113,41 +1113,41 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Rgb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Rgb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Rgb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Rgb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Rgb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Rgb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, T>, A>

Xyza implementations.

-
source

pub const fn new(x: T, y: T, z: T, alpha: A) -> Self

Create a CIE XYZ color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (X, Y, Z, alpha) tuple.

-
source

pub fn from_components((x, y, z, alpha): (T, T, T, A)) -> Self

Convert from a (X, Y, Z, alpha) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Alpha<Xyz<NewWp, T>, A>

Changes the reference white point without changing the color value.

+
source§

impl<Wp, T, A> Alpha<Xyz<Wp, T>, A>

Xyza implementations.

+
source

pub const fn new(x: T, y: T, z: T, alpha: A) -> Self

Create a CIE XYZ color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (X, Y, Z, alpha) tuple.

+
source

pub fn from_components((x, y, z, alpha): (T, T, T, A)) -> Self

Convert from a (X, Y, Z, alpha) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Alpha<Xyz<NewWp, T>, A>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Xyz<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Xyz<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Xyz<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Xyz<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Xyz<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1156,7 +1156,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Xyz<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1165,41 +1165,41 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Xyz<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Xyz<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, T>, A>

Yxya implementations.

-
source

pub const fn new(x: T, y: T, luma: T, alpha: A) -> Self

Create a CIE Yxy color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn from_components((x, y, luma, alpha): (T, T, T, A)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Alpha<Yxy<NewWp, T>, A>

Changes the reference white point without changing the color value.

+
source§

impl<Wp, T, A> Alpha<Yxy<Wp, T>, A>

Yxya implementations.

+
source

pub const fn new(x: T, y: T, luma: T, alpha: A) -> Self

Create a CIE Yxy color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn from_components((x, y, luma, alpha): (T, T, T, A)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Alpha<Yxy<NewWp, T>, A>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Yxy<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Yxy<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Yxy<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Yxy<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Yxy<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1208,7 +1208,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Yxy<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1217,11 +1217,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Yxy<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Yxy<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where @@ -1286,109 +1286,109 @@

Access C: DivAssign<T>,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Tc, Ta, C, A> Extend<Alpha<Tc, Ta>> for Alpha<C, A>where C: Extend<Tc>, A: Extend<Ta>,

source§

fn extend<T: IntoIterator<Item = Alpha<Tc, Ta>>>(&mut self, iter: T)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, C, T, const N: usize> From<&'a [T; N]> for &'a Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsl<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsl<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsluv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsluv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsv<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsv<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hwb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hwb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lab<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lab<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lch<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lch<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lchuv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lchuv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luma<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luma<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsl<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsl<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsv<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsv<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhwb<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Oklab<T>, T>; N]> for Alpha<Oklab<V>, V>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklab<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Oklch<T>, T>; N]> for Alpha<Oklch<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklch<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklch<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Rgb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Rgb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Xyz<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Xyz<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Yxy<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>

source§

fn from(components: (T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Yxy<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>

source§

fn from(components: (T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where C: Premultiply,

source§

fn from(color: Alpha<C, C::Scalar>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Alpha<C, T>> for [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsl<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsl<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsl<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsluv<Wp, T>, A>) -> (LuvHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsl<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsluv<Wp, T>, A>) -> (LuvHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsluv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsv<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsluv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsv<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsv<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hwb<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsv<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hwb<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hwb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Lab<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hwb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Lab<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lab<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)

source§

fn from(color: Alpha<Lch<Wp, T>, A>) -> (T, T, LabHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lab<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)

source§

fn from(color: Alpha<Lch<Wp, T>, A>) -> (T, T, LabHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lch<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)

source§

fn from(color: Alpha<Lchuv<Wp, T>, A>) -> (T, T, LuvHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lch<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)

source§

fn from(color: Alpha<Lchuv<Wp, T>, A>) -> (T, T, LuvHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lchuv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)

source§

fn from(color: Alpha<Luma<S, T>, A>) -> (T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lchuv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)

source§

fn from(color: Alpha<Luma<S, T>, A>) -> (T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luma<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Luma<S, u8>, u8>> for u16

source§

fn from(color: Lumaa<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Luv<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luma<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Luma<S, u8>, u8>> for u16

source§

fn from(color: Lumaa<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Luv<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsl<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)

source§

fn from(color: Alpha<Okhsv<T>, A>) -> (OklabHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsl<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)

source§

fn from(color: Alpha<Okhsv<T>, A>) -> (OklabHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsv<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsv<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhwb<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Oklab<T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhwb<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Oklab<T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklab<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)

source§

fn from(color: Alpha<Oklch<T>, A>) -> (T, T, OklabHue<T>, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklab<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)

source§

fn from(color: Alpha<Oklch<T>, A>) -> (T, T, OklabHue<T>, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklch<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklch<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where U: FromStimulus<T>, - Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgba: LinSrgba<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Rgb<S, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where + Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgba: LinSrgba<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Rgb<S, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Rgb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32

source§

fn from(color: Rgba<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Rgb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32

source§

fn from(color: Rgba<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where U: FromStimulus<T>, - Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgba: Srgba<T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Xyz<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where + Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgba: Srgba<T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Xyz<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Xyz<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Yxy<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Xyz<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Yxy<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Yxy<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<C, T: Stimulus> From<C> for Alpha<C, T>

source§

fn from(color: C) -> Alpha<C, T>

Converts to this type from the input type.
source§

impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where - C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Yxy<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<C, T: Stimulus> From<C> for Alpha<C, T>

source§

fn from(color: C) -> Alpha<C, T>

Converts to this type from the input type.
source§

impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where + C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklab<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where - C1::Color: IntoColorUnclamped<C2>,

source§

fn from_color_unclamped(other: C1) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where + C1::Color: IntoColorUnclamped<C2>,

source§

fn from_color_unclamped(other: C1) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>where C: Extend<Tc> + FromIterator<Tc>, A: Extend<Ta> + Default,

source§

fn from_iter<T: IntoIterator<Item = Alpha<Tc, Ta>>>(iter: T) -> Self

Creates a value from an iterator. Read more
source§

impl<C: GetHue, T> GetHue for Alpha<C, T>

§

type Hue = <C as GetHue>::Hue

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> C::Hue

Calculate a hue if possible. Read more
source§

impl<C, T> HasBoolMask for Alpha<C, T>where C: HasBoolMask, diff --git a/palette/alpha/trait.WithAlpha.html b/palette/alpha/trait.WithAlpha.html index 7fb58fb5b..8490558bc 100644 --- a/palette/alpha/trait.WithAlpha.html +++ b/palette/alpha/trait.WithAlpha.html @@ -128,21 +128,21 @@

Deriving

let transparent: Srgba<u8> = color.transparent(); assert_eq!(transparent.alpha, 0);

-

Implementors§

source§

impl<C, A> WithAlpha<A> for Alpha<C, A>

§

type Color = C

§

type WithAlpha = Alpha<C, A>

source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where - _A: Stimulus,

§

type Color = Luma<S, T>

§

type WithAlpha = Alpha<Luma<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where - _A: Stimulus,

§

type Color = Rgb<S, T>

§

type WithAlpha = Alpha<Rgb<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where - _A: Stimulus,

§

type Color = Hsl<S, T>

§

type WithAlpha = Alpha<Hsl<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where - _A: Stimulus,

§

type Color = Hsv<S, T>

§

type WithAlpha = Alpha<Hsv<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where +

Implementors§

source§

impl<C, A> WithAlpha<A> for Alpha<C, A>

§

type Color = C

§

type WithAlpha = Alpha<C, A>

source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where + _A: Stimulus,

§

type Color = Luma<S, T>

§

type WithAlpha = Alpha<Luma<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where + _A: Stimulus,

§

type Color = Rgb<S, T>

§

type WithAlpha = Alpha<Rgb<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where + _A: Stimulus,

§

type Color = Hsl<S, T>

§

type WithAlpha = Alpha<Hsl<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where + _A: Stimulus,

§

type Color = Hsv<S, T>

§

type WithAlpha = Alpha<Hsv<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where _A: Stimulus,

§

type Color = Hwb<S, T>

§

type WithAlpha = Alpha<Hwb<S, T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhsl<T>where _A: Stimulus,

§

type Color = Okhsl<T>

§

type WithAlpha = Alpha<Okhsl<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhsv<T>where _A: Stimulus,

§

type Color = Okhsv<T>

§

type WithAlpha = Alpha<Okhsv<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhwb<T>where _A: Stimulus,

§

type Color = Okhwb<T>

§

type WithAlpha = Alpha<Okhwb<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Oklab<T>where _A: Stimulus,

§

type Color = Oklab<T>

§

type WithAlpha = Alpha<Oklab<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Oklch<T>where - _A: Stimulus,

§

type Color = Oklch<T>

§

type WithAlpha = Alpha<Oklch<T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where - _A: Stimulus,

§

type Color = Hsluv<Wp, T>

§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where - _A: Stimulus,

§

type Color = Lab<Wp, T>

§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where - _A: Stimulus,

§

type Color = Lch<Wp, T>

§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where - _A: Stimulus,

§

type Color = Lchuv<Wp, T>

§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where - _A: Stimulus,

§

type Color = Luv<Wp, T>

§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where - _A: Stimulus,

§

type Color = Xyz<Wp, T>

§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where + _A: Stimulus,

§

type Color = Oklch<T>

§

type WithAlpha = Alpha<Oklch<T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where + _A: Stimulus,

§

type Color = Hsluv<Wp, T>

§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where + _A: Stimulus,

§

type Color = Lab<Wp, T>

§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where + _A: Stimulus,

§

type Color = Lch<Wp, T>

§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where + _A: Stimulus,

§

type Color = Lchuv<Wp, T>

§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where + _A: Stimulus,

§

type Color = Luv<Wp, T>

§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where + _A: Stimulus,

§

type Color = Xyz<Wp, T>

§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where _A: Stimulus,

§

type Color = Yxy<Wp, T>

§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

\ No newline at end of file diff --git a/palette/blend/struct.PreAlpha.html b/palette/blend/struct.PreAlpha.html index dc88e2bc5..4e223804a 100644 --- a/palette/blend/struct.PreAlpha.html +++ b/palette/blend/struct.PreAlpha.html @@ -87,79 +87,79 @@ PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,
source§

fn from(array: &'a [C::Scalar; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar]where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(color: &'a PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a PreAlpha<C>> for &'a [C::Scalar; N]where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(color: &'a PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a mut [<C as Premultiply>::Scalar; N]> for &'a mut PreAlpha<C>where - PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(array: &'a mut [C::Scalar; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar]where + PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(array: &'a mut [C::Scalar; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar]where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(color: &'a mut PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<'a, C: Premultiply, const N: usize> From<&'a mut PreAlpha<C>> for &'a mut [C::Scalar; N]where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(color: &'a mut PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<C: Premultiply, const N: usize> From<[<C as Premultiply>::Scalar; N]> for PreAlpha<C>where - PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(array: [C::Scalar; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Lab<Wp, T>>; N]> for PreAlpha<Lab<Wp, V>>where + PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(array: [C::Scalar; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Lab<Wp, T>>; N]> for PreAlpha<Lab<Wp, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Lab<Wp, T>: Premultiply<Scalar = T>, - Lab<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Lab<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[PreAlpha<Luma<S, T>>; N]> for PreAlpha<Luma<S, V>>where + Lab<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Lab<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[PreAlpha<Luma<S, T>>; N]> for PreAlpha<Luma<S, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Luma<S, T>: Premultiply<Scalar = T>, - Luma<S, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Luma<S, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Luv<Wp, T>>; N]> for PreAlpha<Luv<Wp, V>>where + Luma<S, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Luma<S, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Luv<Wp, T>>; N]> for PreAlpha<Luv<Wp, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Luv<Wp, T>: Premultiply<Scalar = T>, - Luv<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Luv<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[PreAlpha<Oklab<T>>; N]> for PreAlpha<Oklab<V>>where + Luv<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Luv<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[PreAlpha<Oklab<T>>; N]> for PreAlpha<Oklab<V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Oklab<T>: Premultiply<Scalar = T>, - Oklab<V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Oklab<T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[PreAlpha<Rgb<S, T>>; N]> for PreAlpha<Rgb<S, V>>where + Oklab<V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Oklab<T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[PreAlpha<Rgb<S, T>>; N]> for PreAlpha<Rgb<S, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Rgb<S, T>: Premultiply<Scalar = T>, - Rgb<S, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Rgb<S, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Xyz<Wp, T>>; N]> for PreAlpha<Xyz<Wp, V>>where + Rgb<S, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Rgb<S, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Xyz<Wp, T>>; N]> for PreAlpha<Xyz<Wp, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Xyz<Wp, T>: Premultiply<Scalar = T>, - Xyz<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Xyz<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Yxy<Wp, T>>; N]> for PreAlpha<Yxy<Wp, V>>where + Xyz<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Xyz<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[PreAlpha<Yxy<Wp, T>>; N]> for PreAlpha<Yxy<Wp, V>>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>, Yxy<Wp, T>: Premultiply<Scalar = T>, - Yxy<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Yxy<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where + Yxy<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(colors: [PreAlpha<Yxy<Wp, T>>; N]) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where C: Premultiply,

source§

fn from(color: Alpha<C, C::Scalar>) -> Self

Converts to this type from the input type.
source§

impl<C: Premultiply, const N: usize> From<Box<[<C as Premultiply>::Scalar; N], Global>> for Box<PreAlpha<C>>where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(array: Box<[C::Scalar; N]>) -> Self

Converts to this type from the input type.
source§

impl<C> From<C> for PreAlpha<C>where C: Premultiply, C::Scalar: Stimulus,

source§

fn from(color: C) -> Self

Converts to this type from the input type.
source§

impl<C: Premultiply, const N: usize> From<PreAlpha<C>> for [C::Scalar; N]where PreAlpha<C>: ArrayCast<Array = [C::Scalar; N]>,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where - C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Lab<Wp, V>>> for [PreAlpha<Lab<Wp, T>>; N]where + C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Lab<Wp, V>>> for [PreAlpha<Lab<Wp, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Lab<Wp, T>: Premultiply<Scalar = T>, - Lab<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Lab<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<PreAlpha<Luma<S, V>>> for [PreAlpha<Luma<S, T>>; N]where + Lab<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Lab<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<PreAlpha<Luma<S, V>>> for [PreAlpha<Luma<S, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Luma<S, T>: Premultiply<Scalar = T>, - Luma<S, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Luma<S, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Luv<Wp, V>>> for [PreAlpha<Luv<Wp, T>>; N]where + Luma<S, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Luma<S, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Luv<Wp, V>>> for [PreAlpha<Luv<Wp, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Luv<Wp, T>: Premultiply<Scalar = T>, - Luv<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Luv<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where + Luv<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Luv<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<PreAlpha<Oklab<V>>> for [PreAlpha<Oklab<T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Oklab<T>: Premultiply<Scalar = T>, - Oklab<V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Oklab<V>>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<PreAlpha<Rgb<S, V>>> for [PreAlpha<Rgb<S, T>>; N]where + Oklab<V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Oklab<V>>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<PreAlpha<Rgb<S, V>>> for [PreAlpha<Rgb<S, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Rgb<S, T>: Premultiply<Scalar = T>, - Rgb<S, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Rgb<S, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Xyz<Wp, V>>> for [PreAlpha<Xyz<Wp, T>>; N]where + Rgb<S, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Rgb<S, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Xyz<Wp, V>>> for [PreAlpha<Xyz<Wp, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Xyz<Wp, T>: Premultiply<Scalar = T>, - Xyz<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Xyz<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Yxy<Wp, V>>> for [PreAlpha<Yxy<Wp, T>>; N]where + Xyz<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Xyz<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<PreAlpha<Yxy<Wp, V>>> for [PreAlpha<Yxy<Wp, T>>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>, Yxy<Wp, T>: Premultiply<Scalar = T>, - Yxy<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Yxy<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<C, T> Mix for PreAlpha<C>where + Yxy<Wp, V>: Premultiply<Scalar = V>,

source§

fn from(color: PreAlpha<Yxy<Wp, V>>) -> Self

Converts to this type from the input type.
source§

impl<C, T> Mix for PreAlpha<C>where C: Mix<Scalar = T> + Premultiply<Scalar = T>, T: Real + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<C, T> MixAssign for PreAlpha<C>where C: MixAssign<Scalar = T> + Premultiply<Scalar = T>, diff --git a/palette/blend/trait.Premultiply.html b/palette/blend/trait.Premultiply.html index 680bc025b..3fd4116bc 100644 --- a/palette/blend/trait.Premultiply.html +++ b/palette/blend/trait.Premultiply.html @@ -11,18 +11,18 @@

source

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, Self::Scalar)

Alpha unmask the color, resulting in a color and transparency pair.

This is done by dividing the masked color’s component by alpha, or returning a black color if alpha is 0.

-

Implementors§

source§

impl<S, T> Premultiply for Luma<S, T>where +

Implementors§

source§

impl<S, T> Premultiply for Luma<S, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<S, T> Premultiply for Rgb<S, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<S, T> Premultiply for Rgb<S, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<T> Premultiply for Oklab<T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Lab<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Lab<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Luv<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Luv<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Xyz<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Yxy<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> Premultiply for Yxy<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/bool_mask/trait.HasBoolMask.html b/palette/bool_mask/trait.HasBoolMask.html index 0e4f2e190..8a9e67234 100644 --- a/palette/bool_mask/trait.HasBoolMask.html +++ b/palette/bool_mask/trait.HasBoolMask.html @@ -12,21 +12,21 @@ T: HasBoolMask,
§

type Mask = <T as HasBoolMask>::Mask

source§

impl HasBoolMask for u64

§

type Mask = bool

source§

impl<T> HasBoolMask for &mut Twhere T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl HasBoolMask for i64

§

type Mask = bool

source§

impl HasBoolMask for u16

§

type Mask = bool

source§

impl HasBoolMask for i8

§

type Mask = bool

source§

impl HasBoolMask for f64

§

type Mask = bool

source§

impl HasBoolMask for f32

§

type Mask = bool

source§

impl HasBoolMask for u8

§

type Mask = bool

Implementors§

source§

impl<C, T> HasBoolMask for Alpha<C, T>where C: HasBoolMask, - T: HasBoolMask<Mask = C::Mask>,

§

type Mask = <C as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Luma<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Rgb<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hsl<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hsv<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hwb<S, T>where + T: HasBoolMask<Mask = C::Mask>,

§

type Mask = <C as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Luma<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Rgb<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hsl<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hsv<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<S, T> HasBoolMask for Hwb<S, T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Okhsl<T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Okhsv<T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Okhsv<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Okhwb<T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Oklab<T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Oklch<T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Oklab<T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<T> HasBoolMask for Oklch<T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

\ No newline at end of file diff --git a/palette/cast/struct.Packed.html b/palette/cast/struct.Packed.html index e67aa7636..e6ced5e7a 100644 --- a/palette/cast/struct.Packed.html +++ b/palette/cast/struct.Packed.html @@ -58,22 +58,22 @@

Trait Implementations§

source§

impl<O, T, const N: usize> ArrayCast for Packed<O, [T; N]>

§

type Array = [T; N]

The output type of a cast to an array.
source§

impl<O, T, const N: usize> AsMut<[T]> for Packed<O, [T; N]>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O, T, const N: usize> AsMut<[T; N]> for Packed<O, [T; N]>

source§

fn as_mut(&mut self) -> &mut [T; N]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O, P> AsMut<P> for Packed<O, P>where Packed<O, P>: UintCast<Uint = P>,

source§

fn as_mut(&mut self) -> &mut P

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O, T, const N: usize> AsMut<Packed<O, [T; N]>> for [T; N]

source§

fn as_mut(&mut self) -> &mut Packed<O, [T; N]>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O> AsMut<Packed<O, u128>> for u128

source§

fn as_mut(&mut self) -> &mut Packed<O, u128>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O> AsMut<Packed<O, u16>> for u16

source§

fn as_mut(&mut self) -> &mut Packed<O, u16>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O> AsMut<Packed<O, u32>> for u32

source§

fn as_mut(&mut self) -> &mut Packed<O, u32>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O> AsMut<Packed<O, u64>> for u64

source§

fn as_mut(&mut self) -> &mut Packed<O, u64>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O> AsMut<Packed<O, u8>> for u8

source§

fn as_mut(&mut self) -> &mut Packed<O, u8>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<O, T, const N: usize> AsRef<[T]> for Packed<O, [T; N]>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O, T, const N: usize> AsRef<[T; N]> for Packed<O, [T; N]>

source§

fn as_ref(&self) -> &[T; N]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O, P> AsRef<P> for Packed<O, P>where Packed<O, P>: UintCast<Uint = P>,

source§

fn as_ref(&self) -> &P

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O, T, const N: usize> AsRef<Packed<O, [T; N]>> for [T; N]

source§

fn as_ref(&self) -> &Packed<O, [T; N]>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O> AsRef<Packed<O, u128>> for u128

source§

fn as_ref(&self) -> &Packed<O, u128>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O> AsRef<Packed<O, u16>> for u16

source§

fn as_ref(&self) -> &Packed<O, u16>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O> AsRef<Packed<O, u32>> for u32

source§

fn as_ref(&self) -> &Packed<O, u32>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O> AsRef<Packed<O, u64>> for u64

source§

fn as_ref(&self) -> &Packed<O, u64>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O> AsRef<Packed<O, u8>> for u8

source§

fn as_ref(&self) -> &Packed<O, u8>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<O, P> Clone for Packed<O, P>where - P: Clone,

source§

fn clone(&self) -> Self

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<O: Debug, P: Debug> Debug for Packed<O, P>

source§

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

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

impl<'a, O, T, const N: usize> From<&'a [T; N]> for &'a Packed<O, [T; N]>

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, O, P> From<&'a P> for &'a Packed<O, P>where + P: Clone,

source§

fn clone(&self) -> Self

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<O: Debug, P: Debug> Debug for Packed<O, P>

source§

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

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

impl<'a, O, T, const N: usize> From<&'a [T; N]> for &'a Packed<O, [T; N]>

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, O, P> From<&'a P> for &'a Packed<O, P>where P: AsRef<Packed<O, P>>, - Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: &'a P) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T]

source§

fn from(color: &'a Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T; N]

source§

fn from(color: &'a Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u128>> for &'a u128

source§

fn from(color: &'a Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u16>> for &'a u16

source§

fn from(color: &'a Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u32>> for &'a u32

source§

fn from(color: &'a Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u64>> for &'a u64

source§

fn from(color: &'a Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u8>> for &'a u8

source§

fn from(color: &'a Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut [T; N]> for &'a mut Packed<O, [T; N]>

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, O, P> From<&'a mut P> for &'a mut Packed<O, P>where + Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: &'a P) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T]

source§

fn from(color: &'a Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a Packed<O, [T; N]>> for &'a [T; N]

source§

fn from(color: &'a Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u128>> for &'a u128

source§

fn from(color: &'a Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u16>> for &'a u16

source§

fn from(color: &'a Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u32>> for &'a u32

source§

fn from(color: &'a Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u64>> for &'a u64

source§

fn from(color: &'a Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a Packed<O, u8>> for &'a u8

source§

fn from(color: &'a Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut [T; N]> for &'a mut Packed<O, [T; N]>

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, O, P> From<&'a mut P> for &'a mut Packed<O, P>where P: AsMut<Packed<O, P>>, - Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: &'a mut P) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T]

source§

fn from(color: &'a mut Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T; N]

source§

fn from(color: &'a mut Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u128>> for &'a mut u128

source§

fn from(color: &'a mut Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u16>> for &'a mut u16

source§

fn from(color: &'a mut Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u32>> for &'a mut u32

source§

fn from(color: &'a mut Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u64>> for &'a mut u64

source§

fn from(color: &'a mut Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u8>> for &'a mut u8

source§

fn from(color: &'a mut Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<[T; N]> for Packed<O, [T; N]>

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<Box<[T; N], Global>> for Box<Packed<O, [T; N]>>

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where + Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: &'a mut P) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T]

source§

fn from(color: &'a mut Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O, T, const N: usize> From<&'a mut Packed<O, [T; N]>> for &'a mut [T; N]

source§

fn from(color: &'a mut Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u128>> for &'a mut u128

source§

fn from(color: &'a mut Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u16>> for &'a mut u16

source§

fn from(color: &'a mut Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u32>> for &'a mut u32

source§

fn from(color: &'a mut Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u64>> for &'a mut u64

source§

fn from(color: &'a mut Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, O> From<&'a mut Packed<O, u8>> for &'a mut u8

source§

fn from(color: &'a mut Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<[T; N]> for Packed<O, [T; N]>

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<Box<[T; N], Global>> for Box<Packed<O, [T; N]>>

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where O: ComponentOrder<Lumaa<S, T>, P>, - Lumaa<S, T>: From<Luma<S, T>>,

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O, P> From<P> for Packed<O, P>where - Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: P) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<Packed<O, [T; N]>> for [T; N]

source§

fn from(color: Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where - O: ComponentOrder<Lumaa<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where - O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where - O: ComponentOrder<Rgba<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where - O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u128>> for u128

source§

fn from(color: Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u16>> for u16

source§

fn from(color: Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u32>> for u32

source§

fn from(color: Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u64>> for u64

source§

fn from(color: Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u8>> for u8

source§

fn from(color: Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where + Lumaa<S, T>: From<Luma<S, T>>,

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O, P> From<P> for Packed<O, P>where + Packed<O, P>: UintCast<Uint = P>,

source§

fn from(uint: P) -> Self

Converts to this type from the input type.
source§

impl<O, T, const N: usize> From<Packed<O, [T; N]>> for [T; N]

source§

fn from(color: Packed<O, [T; N]>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where + O: ComponentOrder<Lumaa<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where + O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where + O: ComponentOrder<Rgba<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where + O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u128>> for u128

source§

fn from(color: Packed<O, u128>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u16>> for u16

source§

fn from(color: Packed<O, u16>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u32>> for u32

source§

fn from(color: Packed<O, u32>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u64>> for u64

source§

fn from(color: Packed<O, u64>) -> Self

Converts to this type from the input type.
source§

impl<O> From<Packed<O, u8>> for u8

source§

fn from(color: Packed<O, u8>) -> Self

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where O: ComponentOrder<Rgba<S, T>, P>, - Rgba<S, T>: From<Rgb<S, T>>,

source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O: PartialEq, P: PartialEq> PartialEq<Packed<O, P>> for Packed<O, P>

source§

fn eq(&self, other: &Packed<O, P>) -> bool

This method tests for self and other values to be equal, and is used + Rgba<S, T>: From<Rgb<S, T>>,
source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<O: PartialEq, P: PartialEq> PartialEq<Packed<O, P>> for Packed<O, P>

source§

fn eq(&self, other: &Packed<O, P>) -> 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<'a, O, T, const N: usize> TryFrom<&'a [T]> for &'a Packed<O, [T; N]>

§

type Error = <&'a [T; N] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, O, T, const N: usize> TryFrom<&'a mut [T]> for &'a mut Packed<O, [T; N]>

§

type Error = <&'a mut [T; N] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<O> UintCast for Packed<O, u128>

§

type Uint = u128

An unsigned integer with the same size as Self.
source§

impl<O> UintCast for Packed<O, u16>

§

type Uint = u16

An unsigned integer with the same size as Self.
source§

impl<O> UintCast for Packed<O, u32>

§

type Uint = u32

An unsigned integer with the same size as Self.
source§

impl<O> UintCast for Packed<O, u64>

§

type Uint = u64

An unsigned integer with the same size as Self.
source§

impl<O> UintCast for Packed<O, u8>

§

type Uint = u8

An unsigned integer with the same size as Self.
source§

impl<O, P> Copy for Packed<O, P>where P: Copy,

source§

impl<O: Eq, P: Eq> Eq for Packed<O, P>

source§

impl<O, P> StructuralEq for Packed<O, P>

source§

impl<O, P> StructuralPartialEq for Packed<O, P>

Auto Trait Implementations§

§

impl<O, P> RefUnwindSafe for Packed<O, P>where diff --git a/palette/cast/trait.ArrayCast.html b/palette/cast/trait.ArrayCast.html index 8ad586160..894c1618f 100644 --- a/palette/cast/trait.ArrayCast.html +++ b/palette/cast/trait.ArrayCast.html @@ -126,4 +126,4 @@

Safety

C: ArrayCast, C::Array: NextArray,

§

type Array = <<C as ArrayCast>::Array as NextArray>::Next

source§

impl<C, T> ArrayCast for PreAlpha<C>where C: ArrayCast + Premultiply<Scalar = T>, - C::Array: NextArray + ArrayExt<Item = T>,

§

type Array = <<C as ArrayCast>::Array as NextArray>::Next

source§

impl<O, T, const N: usize> ArrayCast for Packed<O, [T; N]>

source§

impl<S, T> ArrayCast for Luma<S, T>

source§

impl<S, T> ArrayCast for Rgb<S, T>

source§

impl<S, T> ArrayCast for Hsl<S, T>

source§

impl<S, T> ArrayCast for Hsv<S, T>

source§

impl<S, T> ArrayCast for Hwb<S, T>

source§

impl<T> ArrayCast for Okhsl<T>

source§

impl<T> ArrayCast for Okhsv<T>

source§

impl<T> ArrayCast for Okhwb<T>

source§

impl<T> ArrayCast for Oklab<T>

source§

impl<T> ArrayCast for Oklch<T>

source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

\ No newline at end of file + C::Array: NextArray + ArrayExt<Item = T>,
§

type Array = <<C as ArrayCast>::Array as NextArray>::Next

source§

impl<O, T, const N: usize> ArrayCast for Packed<O, [T; N]>

§

type Array = [T; N]

source§

impl<S, T> ArrayCast for Luma<S, T>

§

type Array = [T; 1]

source§

impl<S, T> ArrayCast for Rgb<S, T>

§

type Array = [T; 3]

source§

impl<S, T> ArrayCast for Hsl<S, T>

§

type Array = [T; 3]

source§

impl<S, T> ArrayCast for Hsv<S, T>

§

type Array = [T; 3]

source§

impl<S, T> ArrayCast for Hwb<S, T>

§

type Array = [T; 3]

source§

impl<T> ArrayCast for Okhsl<T>

§

type Array = [T; 3]

source§

impl<T> ArrayCast for Okhsv<T>

§

type Array = [T; 3]

source§

impl<T> ArrayCast for Okhwb<T>

§

type Array = [T; 3]

source§

impl<T> ArrayCast for Oklab<T>

§

type Array = [T; 3]

source§

impl<T> ArrayCast for Oklch<T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

§

type Array = [T; 3]

source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

§

type Array = [T; 3]

\ No newline at end of file diff --git a/palette/cast/trait.UintCast.html b/palette/cast/trait.UintCast.html index 012d36ccd..b512f6996 100644 --- a/palette/cast/trait.UintCast.html +++ b/palette/cast/trait.UintCast.html @@ -27,4 +27,4 @@

Safety

rarely, if ever, be an issue. The requirements above ensures that the underlying field types stay the same and will be dropped.

Required Associated Types§

source

type Uint

An unsigned integer with the same size as Self.

-

Implementors§

source§

impl<O> UintCast for Packed<O, u8>

§

type Uint = u8

source§

impl<O> UintCast for Packed<O, u16>

§

type Uint = u16

source§

impl<O> UintCast for Packed<O, u32>

§

type Uint = u32

source§

impl<O> UintCast for Packed<O, u64>

§

type Uint = u64

source§

impl<O> UintCast for Packed<O, u128>

§

type Uint = u128

source§

impl<S> UintCast for Luma<S, u8>

§

type Uint = u8

source§

impl<S> UintCast for Luma<S, u16>

§

type Uint = u16

source§

impl<S> UintCast for Luma<S, u32>

§

type Uint = u32

source§

impl<S> UintCast for Luma<S, u64>

§

type Uint = u64

source§

impl<S> UintCast for Luma<S, u128>

§

type Uint = u128

\ No newline at end of file +

Implementors§

source§

impl<O> UintCast for Packed<O, u8>

§

type Uint = u8

source§

impl<O> UintCast for Packed<O, u16>

§

type Uint = u16

source§

impl<O> UintCast for Packed<O, u32>

§

type Uint = u32

source§

impl<O> UintCast for Packed<O, u64>

§

type Uint = u64

source§

impl<O> UintCast for Packed<O, u128>

§

type Uint = u128

source§

impl<S> UintCast for Luma<S, u8>

§

type Uint = u8

source§

impl<S> UintCast for Luma<S, u16>

§

type Uint = u16

source§

impl<S> UintCast for Luma<S, u32>

§

type Uint = u32

source§

impl<S> UintCast for Luma<S, u64>

§

type Uint = u64

source§

impl<S> UintCast for Luma<S, u128>

§

type Uint = u128

\ No newline at end of file diff --git a/palette/color_difference/trait.Ciede2000.html b/palette/color_difference/trait.Ciede2000.html index ee5bec7b6..b572b0da2 100644 --- a/palette/color_difference/trait.Ciede2000.html +++ b/palette/color_difference/trait.Ciede2000.html @@ -14,9 +14,9 @@ calculating small distances between colors as opposed to large differences.

Required Associated Types§

source

type Scalar

The type for the ΔE* (Delta E).

Required Methods§

source

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.

-

Implementors§

source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where +

Implementors§

source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Hypot + Clone, - T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where + T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: IntoColorUnclamped<Lab<Wp, T>>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/color_difference/trait.ColorDifference.html b/palette/color_difference/trait.ColorDifference.html index 9fab07559..710c3351e 100644 --- a/palette/color_difference/trait.ColorDifference.html +++ b/palette/color_difference/trait.ColorDifference.html @@ -6,10 +6,10 @@ }
👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Expand description

A trait for calculating the color difference between two colors.

Required Associated Types§

source

type Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000

The type of the calculated color difference.

Required Methods§

source

fn get_color_difference(self, other: Self) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000

Return the difference or distance between two colors.

-

Implementors§

source§

impl<Wp, T> ColorDifference for Lab<Wp, T>where +

Implementors§

source§

impl<Wp, T> ColorDifference for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, - Self: Into<LabColorDiff<T>>,

§

type Scalar = T

source§

impl<Wp, T> ColorDifference for Lch<Wp, T>where + Self: Into<LabColorDiff<T>>,

§

type Scalar = T

source§

impl<Wp, T> ColorDifference for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Trigonometry + Abs + Sqrt + Powi + Exp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: Into<LabColorDiff<T>>,

CIEDE2000 distance metric for color difference.

diff --git a/palette/color_difference/trait.DeltaE.html b/palette/color_difference/trait.DeltaE.html index f32fc8be2..e2de42e9e 100644 --- a/palette/color_difference/trait.DeltaE.html +++ b/palette/color_difference/trait.DeltaE.html @@ -11,7 +11,7 @@

Required Associated Types§

source

type Scalar

The type for the distance value.

Required Methods§

source

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, according to the color space’s specification.

-

Implementors§

source§

impl<Wp, T> DeltaE for Lab<Wp, T>where +

Implementors§

source§

impl<Wp, T> DeltaE for Lab<Wp, T>where Self: EuclideanDistance<Scalar = T>, - T: Sqrt,

§

type Scalar = T

source§

impl<Wp, T> DeltaE for Lch<Wp, T>where + T: Sqrt,

§

type Scalar = T

source§

impl<Wp, T> DeltaE for Lch<Wp, T>where Lab<Wp, T>: FromColorUnclamped<Self> + DeltaE<Scalar = T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/color_difference/trait.EuclideanDistance.html b/palette/color_difference/trait.EuclideanDistance.html index e739c542e..6e737aa4e 100644 --- a/palette/color_difference/trait.EuclideanDistance.html +++ b/palette/color_difference/trait.EuclideanDistance.html @@ -21,11 +21,11 @@ cases, such as when comparing two distances.

Provided Methods§

source

fn distance(self, other: Self) -> Self::Scalarwhere Self::Scalar: Sqrt,

Calculate the Euclidean distance from self to other.

-

Implementors§

source§

impl<S, T> EuclideanDistance for Luma<S, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<S, T> EuclideanDistance for Rgb<S, T>where +

Implementors§

source§

impl<S, T> EuclideanDistance for Luma<S, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<S, T> EuclideanDistance for Rgb<S, T>where T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<T> EuclideanDistance for Oklab<T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/color_difference/trait.HyAb.html b/palette/color_difference/trait.HyAb.html index 09726ccb7..eefe81634 100644 --- a/palette/color_difference/trait.HyAb.html +++ b/palette/color_difference/trait.HyAb.html @@ -22,6 +22,6 @@

This returns the sum of the absolute lightness difference and the distance on the chroma plane.

Implementors§

source§

impl<T> HyAb for Oklab<T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> HyAb for Lab<Wp, T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> HyAb for Luv<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> HyAb for Lab<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

source§

impl<Wp, T> HyAb for Luv<Wp, T>where T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/color_difference/trait.ImprovedDeltaE.html b/palette/color_difference/trait.ImprovedDeltaE.html index 76878cd27..64a9aa27e 100644 --- a/palette/color_difference/trait.ImprovedDeltaE.html +++ b/palette/color_difference/trait.ImprovedDeltaE.html @@ -8,7 +8,7 @@

Required Methods§

source

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self and other, according to the color space’s specification and later improvements by Huang et al.

-

Implementors§

source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where +

Implementors§

source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where Self: DeltaE<Scalar = T>, - T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where + T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where Lab<Wp, T>: FromColorUnclamped<Self> + ImprovedDeltaE<Scalar = T>,

\ No newline at end of file diff --git a/palette/color_difference/trait.Wcag21RelativeContrast.html b/palette/color_difference/trait.Wcag21RelativeContrast.html index ed200b797..40cd74e87 100644 --- a/palette/color_difference/trait.Wcag21RelativeContrast.html +++ b/palette/color_difference/trait.Wcag21RelativeContrast.html @@ -122,10 +122,10 @@ meaningful images and interactive user interface elements.

Success Criterion 1.4.11 Non-text Contrast (Level AA)

-

Implementors§

source§

impl<S, T> Wcag21RelativeContrast for Luma<S, T>where +

Implementors§

source§

impl<S, T> Wcag21RelativeContrast for Luma<S, T>where Self: IntoColor<Luma<Linear<D65>, T>>, S: LumaStandard<WhitePoint = D65>, - T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,

§

type Scalar = T

source§

impl<S, T> Wcag21RelativeContrast for Rgb<S, T>where + T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,

§

type Scalar = T

source§

impl<S, T> Wcag21RelativeContrast for Rgb<S, T>where Self: IntoColor<Luma<Linear<D65>, T>>, S: RgbStandard<Space = Srgb>, T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/convert/trait.FromColorUnclamped.html b/palette/convert/trait.FromColorUnclamped.html index cf548d6a3..ffd17950d 100644 --- a/palette/convert/trait.FromColorUnclamped.html +++ b/palette/convert/trait.FromColorUnclamped.html @@ -39,201 +39,201 @@ let srgb = Vec::<Srgb>::from_color_unclamped(lch);

Implementors§

source§

impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where - C1::Color: IntoColorUnclamped<C2>,

source§

impl<S1, S2, T> FromColorUnclamped<Luma<S2, T>> for Luma<S1, T>where + C1::Color: IntoColorUnclamped<C2>,

source§

impl<S1, S2, T> FromColorUnclamped<Luma<S2, T>> for Luma<S1, T>where S1: LumaStandard + 'static, S2: LumaStandard<WhitePoint = S1::WhitePoint> + 'static, S1::TransferFn: FromLinear<T, T>, - S2::TransferFn: IntoLinear<T, T>,

source§

impl<S1, S2, T> FromColorUnclamped<Rgb<S2, T>> for Rgb<S1, T>where + S2::TransferFn: IntoLinear<T, T>,

source§

impl<S1, S2, T> FromColorUnclamped<Rgb<S2, T>> for Rgb<S1, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::TransferFn: FromLinear<T, T>, S2::TransferFn: IntoLinear<T, T>, S2::Space: RgbSpace<WhitePoint = <S1::Space as RgbSpace>::WhitePoint>, Xyz<<S2::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Rgb<S2, T>>, - Rgb<S1, T>: FromColorUnclamped<Xyz<<S1::Space as RgbSpace>::WhitePoint, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where + Rgb<S1, T>: FromColorUnclamped<Xyz<<S1::Space as RgbSpace>::WhitePoint, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsl<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsv<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Hsv<S1, T>: FromColorUnclamped<Hwb<S1, T>>, Hsv<S2, T>: FromColorUnclamped<Hsv<S1, T>>, - Self: FromColorUnclamped<Hsv<S2, T>>,

source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where + Self: FromColorUnclamped<Hsv<S2, T>>,

source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where S: RgbStandard + 'static, St: LumaStandard<WhitePoint = <S::Space as RgbSpace>::WhitePoint> + 'static, S::TransferFn: FromLinear<T, T>, St::TransferFn: IntoLinear<T, T>, - T: Clone,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where + T: Clone,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where T: RealAngle + Zero + One + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where T: RealAngle + One + Zero + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where T: Real + Cbrt + Arithmetics + Copy, S: RgbStandard, S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, - Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where + Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Zero + One + Abs + Round + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + T::Mask: LazySelect<T>,

source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Round + Zero + One + Abs + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where - T: One + Arithmetics,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where + T: One + Arithmetics,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + T::Mask: LazySelect<T>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where T: Real + Arithmetics + Copy, S: RgbStandard, S::TransferFn: FromLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, Rgb<Linear<Srgb>, T>: IntoColorUnclamped<Self>, - Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where + Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, S::TransferFn: FromLinear<T, T>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, <S::Space as RgbSpace>::WhitePoint: WhitePoint<T::Scalar>, T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + Clone + FromScalar<Scalar = T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + S::TransferFn: FromLinear<T, T>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where + S::TransferFn: FromLinear<T, T>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where + Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, @@ -302,7 +302,7 @@ T: RealAngle + PartialOrd + HasBoolMask<Mask = bool> + MinMax + Powi + Arithmetics + Clone + One + Zero + Cbrt + Trigonometry, Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where T: One + Zero + IsValidDivisor + Arithmetics, T::Mask: LazySelect<T>,

source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where @@ -310,7 +310,7 @@ T: Real + One + Zero + Arithmetics + Powi + Sqrt + Hypot + MinMax + Cbrt + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd + Clone, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

See

See srgb_to_okhsl

-
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where +

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where T: Real + MinMax + Clone + Powi + Sqrt + Cbrt + Arithmetics + Trigonometry + Zero + Hypot + One + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

Converts lab to Okhsv in the bounds of sRGB.

See

@@ -320,7 +320,7 @@

See

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklab<T>

source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where T: Hypot + Clone, - Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where + Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where T: Real + Powi + Arithmetics,

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where @@ -344,7 +344,7 @@

See

D65: WhitePoint<T>, Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where S: LumaStandard, S::TransferFn: IntoLinear<T, T>, Self: Default,

source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where @@ -443,157 +443,157 @@

See

_S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, - Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where T: Real + Recip + Powi + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where T: Zero + Hypot, - Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where + Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where T: Real + Zero + Recip + Powi + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>, - Wp: WhitePoint<T>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, T: Real + Powi + Cbrt + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where + T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where T: Zero + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where + T::Mask: LazySelect<T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where T: Zero + One + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where Self: Mul<T, Output = Self>, Wp: WhitePoint<T>, S: LumaStandard<WhitePoint = Wp>, - S::TransferFn: IntoLinear<T, T>,

source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where + S::TransferFn: IntoLinear<T, T>,

source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + FromScalar<Scalar = T::Scalar> + Clone, Wp: WhitePoint<T::Scalar>, @@ -601,133 +601,133 @@

See

S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = Wp>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, diff --git a/palette/hsl/index.html b/palette/hsl/index.html index cb24ebdb0..607f2bc6e 100644 --- a/palette/hsl/index.html +++ b/palette/hsl/index.html @@ -1,3 +1,3 @@ -palette::hsl - Rust

Module palette::hsl

source ·
Expand description

Types for the HSL color space.

+palette::hsl - Rust

Module palette::hsl

source ·
Expand description

Types for the HSL color space.

Structs

  • HSL color space.
  • An iterator for Hsl values.

Type Definitions

\ No newline at end of file diff --git a/palette/hsl/struct.Hsl.html b/palette/hsl/struct.Hsl.html index e8aa4f382..9fd226b0b 100644 --- a/palette/hsl/struct.Hsl.html +++ b/palette/hsl/struct.Hsl.html @@ -1,4 +1,4 @@ -Hsl in palette::hsl - Rust

Struct palette::hsl::Hsl

source ·
#[repr(C)]
pub struct Hsl<S = Srgb, T = f32> { +Hsl in palette::hsl - Rust

Struct palette::hsl::Hsl

source ·
#[repr(C)]
pub struct Hsl<S = Srgb, T = f32> { pub hue: RgbHue<T>, pub saturation: T, pub lightness: T, @@ -31,210 +31,210 @@ a clear color, and 1.0 will give white.

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hsl<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This method can be used instead of Hsl::new +

Implementations§

source§

impl<T> Hsl<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This method can be used instead of Hsl::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This is the same as Hsl::new_srgb without +

source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This is the same as Hsl::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hsl<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an HSL color.

-
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an HSL color. This is the same as Hsl::new without the generic +

source§

impl<S, T> Hsl<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an HSL color.

+
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an HSL color. This is the same as Hsl::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hsl<S, U>where +

source

pub fn into_format<U>(self) -> Hsl<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hsl<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hsl<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, lightness) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, lightness) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, lightness): (H, T, T) ) -> Self

Convert from a (hue, saturation, lightness) tuple.

-
source§

impl<S, T> Hsl<S, T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_lightness() -> T

Return the lightness value minimum.

-
source

pub fn max_lightness() -> T

Return the lightness value maximum.

-
source§

impl<S, T> Hsl<S, &T>

source

pub fn copied(&self) -> Hsl<S, T>where +

source§

impl<S, T> Hsl<S, T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_lightness() -> T

Return the lightness value minimum.

+
source

pub fn max_lightness() -> T

Return the lightness value maximum.

+
source§

impl<S, T> Hsl<S, &T>

source

pub fn copied(&self) -> Hsl<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsl<S, T>where +

source

pub fn cloned(&self) -> Hsl<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T> Hsl<S, &mut T>

source

pub fn set(&mut self, value: Hsl<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsl<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsl<S, T>where +

source§

impl<S, T> Hsl<S, &mut T>

source

pub fn set(&mut self, value: Hsl<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsl<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsl<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsl<S, T>where +

source

pub fn cloned(&self) -> Hsl<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hsl<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hsl<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsl<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsl<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hsl<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsl<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsl<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hsl<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsl<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsl<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsl<S, T>> for Hsl<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsl<S, T>> for Hsl<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where - T: Add<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsl<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsl<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsl<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsl<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsl<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsl<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsl<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsl<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsl<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsl<S, T>where - T: Clone,

source§

fn clone(&self) -> Hsl<S, T>

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<S: Debug, T: Debug> Debug for Hsl<S, T>

source§

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

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

impl<S, T> Default for Hsl<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where + T: Add<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsl<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsl<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsl<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsl<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsl<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsl<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsl<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsl<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsl<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsl<S, T>where + T: Clone,

source§

fn clone(&self) -> Hsl<S, T>

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<S: Debug, T: Debug> Debug for Hsl<S, T>

source§

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

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

impl<S, T> Default for Hsl<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hsl<S, T>

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

impl<S, T, C> Extend<Hsl<S, T>> for Hsl<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsl<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hsl<S, T>

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

impl<S, T, C> Extend<Hsl<S, T>> for Hsl<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsl<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsl<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsl<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for [T; 3]

source§

fn from(color: Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsl<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsl<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsl<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for [T; 3]

source§

fn from(color: Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsl<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsl<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsl<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Zero + One + Abs + Round + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsl<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsl: Hsl<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsl: Hsl<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where T: RealAngle + Zero + One + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsl<S, T>> for Hsl<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsl<S, T>> for Hsl<S, C>where Self: Extend<Hsl<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsl<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsl<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsl<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsl<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsl<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsl<S, C>where - C: IntoIterator,

§

type Item = Hsl<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsl<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsl<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsl<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsl<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsl<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsl<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsl<S, C>where + C: IntoIterator,

§

type Item = Hsl<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsl<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsl<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsl<S, T>> for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsl<S, T>> for Hsl<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hsl<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hsl<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -254,53 +254,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hsl<S, T>> for Hsl<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hsl<S, T>> for Hsl<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsl<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturateAssign for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturateAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsl<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where - T: Sub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsl<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsl<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsl<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsl<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsl<S, T>> for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsl<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where + T: Sub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsl<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsl<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsl<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsl<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsl<S, T>> for Hsl<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where - _A: Stimulus,

§

type Color = Hsl<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsl<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where + _A: Stimulus,

§

type Color = Hsl<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsl<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsl<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hsl<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsl<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hsl<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hsl<S, T>where S: RefUnwindSafe, diff --git a/palette/hsl/struct.Iter.html b/palette/hsl/struct.Iter.html index 104a8e2e9..754f6b797 100644 --- a/palette/hsl/struct.Iter.html +++ b/palette/hsl/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::hsl - Rust

Struct palette::hsl::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hsl values.

-

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::hsl - Rust

Struct palette::hsl::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hsl values.

+

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where - I: Iterator,

§

type Item = Hsl<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where + I: Iterator,

§

type Item = Hsl<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/hsl/type.Hsla.html b/palette/hsl/type.Hsla.html index f72510ffe..386b36ef6 100644 --- a/palette/hsl/type.Hsla.html +++ b/palette/hsl/type.Hsla.html @@ -1,3 +1,3 @@ -Hsla in palette::hsl - Rust

Type Definition palette::hsl::Hsla

source ·
pub type Hsla<S = Srgb, T = f32> = Alpha<Hsl<S, T>, T>;
Expand description

Linear HSL with an alpha component. See the Hsla implementation in +Hsla in palette::hsl - Rust

Type Definition palette::hsl::Hsla

source ·
pub type Hsla<S = Srgb, T = f32> = Alpha<Hsl<S, T>, T>;
Expand description

Linear HSL with an alpha component. See the Hsla implementation in Alpha.

\ No newline at end of file diff --git a/palette/hsluv/index.html b/palette/hsluv/index.html index 61dabab4d..ec01f03cd 100644 --- a/palette/hsluv/index.html +++ b/palette/hsluv/index.html @@ -1,3 +1,3 @@ -palette::hsluv - Rust

Module palette::hsluv

source ·
Expand description

Types for the HSLuv color space.

+palette::hsluv - Rust

Module palette::hsluv

source ·
Expand description

Types for the HSLuv color space.

Structs

Type Definitions

\ No newline at end of file diff --git a/palette/hsluv/struct.Hsluv.html b/palette/hsluv/struct.Hsluv.html index d5a120e9e..fb1184b06 100644 --- a/palette/hsluv/struct.Hsluv.html +++ b/palette/hsluv/struct.Hsluv.html @@ -1,4 +1,4 @@ -Hsluv in palette::hsluv - Rust

Struct palette::hsluv::Hsluv

source ·
#[repr(C)]
pub struct Hsluv<Wp = D65, T = f32> { +Hsluv in palette::hsluv - Rust

Struct palette::hsluv::Hsluv

source ·
#[repr(C)]
pub struct Hsluv<Wp = D65, T = f32> { pub hue: LuvHue<T>, pub saturation: T, pub l: T, @@ -20,178 +20,178 @@ a clear color, and 100.0 will give white.

§white_point: PhantomData<Wp>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<Wp, T> Hsluv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T) -> Self

Create an HSLuv color.

-
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T) -> Self

Create an HSLuv color. This is the same as Hsluv::new without the +

Implementations§

source§

impl<Wp, T> Hsluv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T) -> Self

Create an HSLuv color.

+
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T) -> Self

Create an HSLuv color. This is the same as Hsluv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (LuvHue<T>, T, T)

Convert to a (hue, saturation, l) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (LuvHue<T>, T, T)

Convert to a (hue, saturation, l) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (hue, saturation, l): (H, T, T) ) -> Self

Convert from a (hue, saturation, l) tuple.

-
source§

impl<Wp, T> Hsluv<Wp, T>where - T: Zero + Real,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source§

impl<Wp, T> Hsluv<Wp, &T>

source

pub fn copied(&self) -> Hsluv<Wp, T>where +

source§

impl<Wp, T> Hsluv<Wp, T>where + T: Zero + Real,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source§

impl<Wp, T> Hsluv<Wp, &T>

source

pub fn copied(&self) -> Hsluv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsluv<Wp, T>where +

source

pub fn cloned(&self) -> Hsluv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Hsluv<Wp, &mut T>

source

pub fn set(&mut self, value: Hsluv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsluv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsluv<Wp, T>where +

source§

impl<Wp, T> Hsluv<Wp, &mut T>

source

pub fn set(&mut self, value: Hsluv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsluv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsluv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsluv<Wp, T>where +

source

pub fn cloned(&self) -> Hsluv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<Wp, C> Hsluv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Hsluv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsluv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsluv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-

source§

impl<Wp, T> Hsluv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsluv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsluv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Hsluv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsluv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsluv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: Add<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Hsluv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsluv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsluv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Hsluv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Hsluv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>

source§

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

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

impl<Wp, T> Default for Hsluv<Wp, T>where + LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: Add<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Hsluv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsluv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsluv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Hsluv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Hsluv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>

source§

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

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

impl<Wp, T> Default for Hsluv<Wp, T>where T: Real + Zero, - LuvHue<T>: Default,

source§

fn default() -> Hsluv<Wp, T>

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

impl<Wp, T, C> Extend<Hsluv<Wp, T>> for Hsluv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsluv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where + LuvHue<T>: Default,

source§

fn default() -> Hsluv<Wp, T>

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

impl<Wp, T, C> Extend<Hsluv<Wp, T>> for Hsluv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsluv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsluv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]

source§

fn from(color: Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)

source§

fn from(color: Hsluv<Wp, T>) -> (LuvHue<T>, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsluv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]

source§

fn from(color: Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)

source§

fn from(color: Hsluv<Wp, T>) -> (LuvHue<T>, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsluv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsluv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<S as LumaStandard>::WhitePoint, T> ) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

fn from_color_unclamped(hsluv: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

fn from_color_unclamped(hsluv: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Hsluv<Wp, T>> for Hsluv<Wp, C>where + Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Hsluv<Wp, T>> for Hsluv<Wp, C>where Self: Extend<Hsluv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsluv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Hsluv<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Hsluv<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Hsluv<Wp, C>where - C: IntoIterator,

§

type Item = Hsluv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsluv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Hsluv<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Hsluv<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Hsluv<Wp, C>where + C: IntoIterator,

§

type Item = Hsluv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: PartialEq, - LuvHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LuvHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Hsluv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Hsluv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -211,53 +211,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Hsluv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Hsluv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Hsluv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Hsluv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Hsluv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Hsluv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where - _A: Stimulus,

§

type Color = Hsluv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where + _A: Stimulus,

§

type Color = Hsluv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Hsluv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Hsluv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Hsluv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Hsluv<Wp, T>where T: Eq, LuvHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Hsluv<Wp, T>where T: RefUnwindSafe, diff --git a/palette/hsluv/struct.Iter.html b/palette/hsluv/struct.Iter.html index 348b8b6f9..9044ad7ff 100644 --- a/palette/hsluv/struct.Iter.html +++ b/palette/hsluv/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::hsluv - Rust

Struct palette::hsluv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Hsluv values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::hsluv - Rust

Struct palette::hsluv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Hsluv values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Hsluv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Hsluv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/hsluv/type.Hsluva.html b/palette/hsluv/type.Hsluva.html index 6db4e8e43..25e9da746 100644 --- a/palette/hsluv/type.Hsluva.html +++ b/palette/hsluv/type.Hsluva.html @@ -1,3 +1,3 @@ -Hsluva in palette::hsluv - Rust

Type Definition palette::hsluv::Hsluva

source ·
pub type Hsluva<Wp = D65, T = f32> = Alpha<Hsluv<Wp, T>, T>;
Expand description

HSLuv with an alpha component. See the Hsluva implementation in +Hsluva in palette::hsluv - Rust

Type Definition palette::hsluv::Hsluva

source ·
pub type Hsluva<Wp = D65, T = f32> = Alpha<Hsluv<Wp, T>, T>;
Expand description

HSLuv with an alpha component. See the Hsluva implementation in Alpha.

\ No newline at end of file diff --git a/palette/hsv/index.html b/palette/hsv/index.html index 5a61bd509..5f78c3628 100644 --- a/palette/hsv/index.html +++ b/palette/hsv/index.html @@ -1,3 +1,3 @@ -palette::hsv - Rust

Module palette::hsv

source ·
Expand description

Types for the HSV color space.

+palette::hsv - Rust

Module palette::hsv

source ·
Expand description

Types for the HSV color space.

Structs

  • HSV color space.
  • An iterator for Hsv values.

Type Definitions

\ No newline at end of file diff --git a/palette/hsv/struct.Hsv.html b/palette/hsv/struct.Hsv.html index 019b2584a..4ef544066 100644 --- a/palette/hsv/struct.Hsv.html +++ b/palette/hsv/struct.Hsv.html @@ -1,4 +1,4 @@ -Hsv in palette::hsv - Rust

Struct palette::hsv::Hsv

source ·
#[repr(C)]
pub struct Hsv<S = Srgb, T = f32> { +Hsv in palette::hsv - Rust

Struct palette::hsv::Hsv

source ·
#[repr(C)]
pub struct Hsv<S = Srgb, T = f32> { pub hue: RgbHue<T>, pub saturation: T, pub value: T, @@ -30,211 +30,211 @@ goes towards 0.0.

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hsv<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an sRGB HSV color. This method can be used instead of Hsv::new +

Implementations§

source§

impl<T> Hsv<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an sRGB HSV color. This method can be used instead of Hsv::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an sRGB HSV color. This is the same as Hsv::new_srgb without +

source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an sRGB HSV color. This is the same as Hsv::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hsv<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an HSV color.

-
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an HSV color. This is the same as Hsv::new without the generic +

source§

impl<S, T> Hsv<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an HSV color.

+
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an HSV color. This is the same as Hsv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hsv<S, U>where +

source

pub fn into_format<U>(self) -> Hsv<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hsv<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hsv<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, value) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, value) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, value): (H, T, T) ) -> Self

Convert from a (hue, saturation, value) tuple.

-
source§

impl<S, T> Hsv<S, T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_value() -> T

Return the value value minimum.

-
source

pub fn max_value() -> T

Return the value value maximum.

-
source§

impl<S, T> Hsv<S, &T>

source

pub fn copied(&self) -> Hsv<S, T>where +

source§

impl<S, T> Hsv<S, T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_value() -> T

Return the value value minimum.

+
source

pub fn max_value() -> T

Return the value value maximum.

+
source§

impl<S, T> Hsv<S, &T>

source

pub fn copied(&self) -> Hsv<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsv<S, T>where +

source

pub fn cloned(&self) -> Hsv<S, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<S, T> Hsv<S, &mut T>

source

pub fn set(&mut self, value: Hsv<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsv<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsv<S, T>where +

source§

impl<S, T> Hsv<S, &mut T>

source

pub fn set(&mut self, value: Hsv<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsv<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsv<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsv<S, T>where +

source

pub fn cloned(&self) -> Hsv<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hsv<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hsv<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsv<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsv<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hsv<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsv<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsv<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hsv<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsv<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsv<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsv<S, T>> for Hsv<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsv<S, T>> for Hsv<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where - T: Add<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsv<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsv<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsv<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsv<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsv<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsv<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsv<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsv<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsv<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsv<S, T>where - T: Clone,

source§

fn clone(&self) -> Hsv<S, T>

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<S: Debug, T: Debug> Debug for Hsv<S, T>

source§

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

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

impl<S, T> Default for Hsv<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where + T: Add<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsv<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsv<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsv<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsv<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsv<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsv<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsv<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsv<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsv<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsv<S, T>where + T: Clone,

source§

fn clone(&self) -> Hsv<S, T>

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<S: Debug, T: Debug> Debug for Hsv<S, T>

source§

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

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

impl<S, T> Default for Hsv<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hsv<S, T>

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

impl<S, T, C> Extend<Hsv<S, T>> for Hsv<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsv<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hsv<S, T>

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

impl<S, T, C> Extend<Hsv<S, T>> for Hsv<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsv<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsv<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsv<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for [T; 3]

source§

fn from(color: Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsv<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsv<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsv<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for [T; 3]

source§

fn from(color: Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsv<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsv<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsv<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where + T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Round + Zero + One + Abs + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsv<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsv: Hsv<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsv: Hsv<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where T: RealAngle + One + Zero + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsv<S, T>> for Hsv<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsv<S, T>> for Hsv<S, C>where Self: Extend<Hsv<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsv<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsv<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsv<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsv<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsv<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsv<S, C>where - C: IntoIterator,

§

type Item = Hsv<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsv<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsv<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsv<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsv<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsv<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsv<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsv<S, C>where + C: IntoIterator,

§

type Item = Hsv<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsv<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsv<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsv<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsv<S, T>> for Hsv<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hsv<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hsv<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -254,53 +254,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hsv<S, T>> for Hsv<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hsv<S, T>> for Hsv<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsv<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturateAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturateAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsv<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where - T: Sub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsv<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsv<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsv<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsv<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsv<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsv<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where + T: Sub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsv<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsv<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsv<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsv<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsv<S, T>> for Hsv<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where - _A: Stimulus,

§

type Color = Hsv<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsv<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where + _A: Stimulus,

§

type Color = Hsv<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsv<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsv<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hsv<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsv<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hsv<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hsv<S, T>where S: RefUnwindSafe, diff --git a/palette/hsv/struct.Iter.html b/palette/hsv/struct.Iter.html index 3e0eb3381..b0b8de77a 100644 --- a/palette/hsv/struct.Iter.html +++ b/palette/hsv/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::hsv - Rust

Struct palette::hsv::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hsv values.

-

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::hsv - Rust

Struct palette::hsv::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hsv values.

+

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where - I: Iterator,

§

type Item = Hsv<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where + I: Iterator,

§

type Item = Hsv<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/hsv/type.Hsva.html b/palette/hsv/type.Hsva.html index a1c2b8e1b..06e497976 100644 --- a/palette/hsv/type.Hsva.html +++ b/palette/hsv/type.Hsva.html @@ -1,3 +1,3 @@ -Hsva in palette::hsv - Rust

Type Definition palette::hsv::Hsva

source ·
pub type Hsva<S = Srgb, T = f32> = Alpha<Hsv<S, T>, T>;
Expand description

Linear HSV with an alpha component. See the Hsva implementation in +Hsva in palette::hsv - Rust

Type Definition palette::hsv::Hsva

source ·
pub type Hsva<S = Srgb, T = f32> = Alpha<Hsv<S, T>, T>;
Expand description

Linear HSV with an alpha component. See the Hsva implementation in Alpha.

\ No newline at end of file diff --git a/palette/hwb/index.html b/palette/hwb/index.html index f2b21c1d1..024878096 100644 --- a/palette/hwb/index.html +++ b/palette/hwb/index.html @@ -1,3 +1,3 @@ -palette::hwb - Rust

Module palette::hwb

source ·
Expand description

Types for the HWB color space.

+palette::hwb - Rust

Module palette::hwb

source ·
Expand description

Types for the HWB color space.

Structs

  • HWB color space.
  • An iterator for Hwb values.

Type Definitions

\ No newline at end of file diff --git a/palette/hwb/struct.Hwb.html b/palette/hwb/struct.Hwb.html index d534e2905..44ee505e3 100644 --- a/palette/hwb/struct.Hwb.html +++ b/palette/hwb/struct.Hwb.html @@ -1,4 +1,4 @@ -Hwb in palette::hwb - Rust

Struct palette::hwb::Hwb

source ·
#[repr(C)]
pub struct Hwb<S = Srgb, T = f32> { +Hwb in palette::hwb - Rust

Struct palette::hwb::Hwb

source ·
#[repr(C)]
pub struct Hwb<S = Srgb, T = f32> { pub hue: RgbHue<T>, pub whiteness: T, pub blackness: T, @@ -33,209 +33,209 @@ chosen with the other two

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hwb<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This method can be used instead of Hwb::new +

Implementations§

source§

impl<T> Hwb<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This method can be used instead of Hwb::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This is the same as Hwb::new_srgb without the +

source

pub const fn new_srgb_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This is the same as Hwb::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hwb<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an HWB color.

-
source

pub const fn new_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an HWB color. This is the same as Hwb::new without the generic +

source§

impl<S, T> Hwb<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an HWB color.

+
source

pub const fn new_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an HWB color. This is the same as Hwb::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hwb<S, U>where +

source

pub fn into_format<U>(self) -> Hwb<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hwb<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hwb<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, whiteness, blackness) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, whiteness, blackness) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, whiteness, blackness): (H, T, T) ) -> Self

Convert from a (hue, whiteness, blackness) tuple.

-
source§

impl<S, T> Hwb<S, T>where - T: Stimulus,

source

pub fn min_whiteness() -> T

Return the whiteness value minimum.

-
source

pub fn max_whiteness() -> T

Return the whiteness value maximum.

-
source

pub fn min_blackness() -> T

Return the blackness value minimum.

-
source

pub fn max_blackness() -> T

Return the blackness value maximum.

-
source§

impl<S, T> Hwb<S, &T>

source

pub fn copied(&self) -> Hwb<S, T>where +

source§

impl<S, T> Hwb<S, T>where + T: Stimulus,

source

pub fn min_whiteness() -> T

Return the whiteness value minimum.

+
source

pub fn max_whiteness() -> T

Return the whiteness value maximum.

+
source

pub fn min_blackness() -> T

Return the blackness value minimum.

+
source

pub fn max_blackness() -> T

Return the blackness value maximum.

+
source§

impl<S, T> Hwb<S, &T>

source

pub fn copied(&self) -> Hwb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hwb<S, T>where +

source

pub fn cloned(&self) -> Hwb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<S, T> Hwb<S, &mut T>

source

pub fn set(&mut self, value: Hwb<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hwb<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hwb<S, T>where +

source§

impl<S, T> Hwb<S, &mut T>

source

pub fn set(&mut self, value: Hwb<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hwb<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hwb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hwb<S, T>where +

source

pub fn cloned(&self) -> Hwb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hwb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hwb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hwb<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hwb<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hwb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hwb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hwb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hwb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hwb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hwb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hwb<S, T>> for Hwb<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hwb<S, T>> for Hwb<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where - T: Add<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hwb<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hwb<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hwb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hwb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hwb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hwb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hwb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hwb<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where + T: Add<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hwb<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hwb<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hwb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hwb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hwb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hwb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hwb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hwb<S, T>where T: One + Clamp + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, - T::Mask: Select<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hwb<S, T>where + T::Mask: Select<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hwb<S, T>where T: One + ClampAssign + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, - T::Mask: Select<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hwb<S, T>where - T: Clone,

source§

fn clone(&self) -> Hwb<S, T>

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<S: Debug, T: Debug> Debug for Hwb<S, T>

source§

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

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

impl<S, T> Default for Hwb<S, T>where + T::Mask: Select<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hwb<S, T>where + T: Clone,

source§

fn clone(&self) -> Hwb<S, T>

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<S: Debug, T: Debug> Debug for Hwb<S, T>

source§

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

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

impl<S, T> Default for Hwb<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hwb<S, T>

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

impl<S, T, C> Extend<Hwb<S, T>> for Hwb<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hwb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hwb<S, T>

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

impl<S, T, C> Extend<Hwb<S, T>> for Hwb<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hwb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hwb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hwb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for [T; 3]

source§

fn from(color: Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hwb<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hwb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hwb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for [T; 3]

source§

fn from(color: Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hwb<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hwb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hwb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Hsv<S1, T>: FromColorUnclamped<Hwb<S1, T>>, Hsv<S2, T>: FromColorUnclamped<Hsv<S1, T>>, - Self: FromColorUnclamped<Hsv<S2, T>>,

source§

fn from_color_unclamped(hwb: Hwb<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Hsv<S2, T>>,

source§

fn from_color_unclamped(hwb: Hwb<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hwb<S, T>> for Hwb<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hwb<S, T>> for Hwb<S, C>where Self: Extend<Hwb<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hwb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hwb<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hwb<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hwb<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hwb<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hwb<S, C>where - C: IntoIterator,

§

type Item = Hwb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hwb<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hwb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hwb<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hwb<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hwb<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hwb<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hwb<S, C>where + C: IntoIterator,

§

type Item = Hwb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hwb<S, T>where T: PartialCmp + Add<Output = T> + Clone + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hwb<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hwb<S, T>where T: Real + Zero + MinMax + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hwb<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + SubAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hwb<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hwb<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hwb<S, T>> for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hwb<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hwb<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hwb<S, T>> for Hwb<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hwb<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hwb<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -255,45 +255,45 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hwb<S, T>> for Hwb<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hwb<S, T>> for Hwb<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hwb<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where - T: Sub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hwb<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hwb<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hwb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hwb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hwb<S, T>> for Hwb<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hwb<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where + T: Sub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hwb<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hwb<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hwb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hwb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hwb<S, T>> for Hwb<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where - _A: Stimulus,

§

type Color = Hwb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hwb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where + _A: Stimulus,

§

type Color = Hwb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hwb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hwb<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hwb<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hwb<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hwb<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hwb<S, T>where S: RefUnwindSafe, diff --git a/palette/hwb/struct.Iter.html b/palette/hwb/struct.Iter.html index 75ff46fba..28ab4e48c 100644 --- a/palette/hwb/struct.Iter.html +++ b/palette/hwb/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::hwb - Rust

Struct palette::hwb::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hwb values.

-

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::hwb - Rust

Struct palette::hwb::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Hwb values.

+

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where - I: Iterator,

§

type Item = Hwb<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where + I: Iterator,

§

type Item = Hwb<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/hwb/type.Hwba.html b/palette/hwb/type.Hwba.html index 8dc726904..6a1ce76c8 100644 --- a/palette/hwb/type.Hwba.html +++ b/palette/hwb/type.Hwba.html @@ -1,3 +1,3 @@ -Hwba in palette::hwb - Rust

Type Definition palette::hwb::Hwba

source ·
pub type Hwba<S = Srgb, T = f32> = Alpha<Hwb<S, T>, T>;
Expand description

Linear HWB with an alpha component. See the Hwba implementation in +Hwba in palette::hwb - Rust

Type Definition palette::hwb::Hwba

source ·
pub type Hwba<S = Srgb, T = f32> = Alpha<Hwb<S, T>, T>;
Expand description

Linear HWB with an alpha component. See the Hwba implementation in Alpha.

\ No newline at end of file diff --git a/palette/lab/index.html b/palette/lab/index.html index 97bfc6d3e..15d9e166e 100644 --- a/palette/lab/index.html +++ b/palette/lab/index.html @@ -1,3 +1,3 @@ -palette::lab - Rust

Module palette::lab

source ·
Expand description

Types for the CIE L*a*b* (CIELAB) color space.

+palette::lab - Rust

Module palette::lab

source ·
Expand description

Types for the CIE L*a*b* (CIELAB) color space.

Structs

  • An iterator for Lab values.
  • The CIE L*a*b* (CIELAB) color space.

Type Definitions

\ No newline at end of file diff --git a/palette/lab/struct.Iter.html b/palette/lab/struct.Iter.html index e924a2eee..2834a2c9d 100644 --- a/palette/lab/struct.Iter.html +++ b/palette/lab/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::lab - Rust

Struct palette::lab::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lab values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::lab - Rust

Struct palette::lab::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lab values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Lab<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Lab<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/lab/struct.Lab.html b/palette/lab/struct.Lab.html index d8b4fdcaa..b8b24e073 100644 --- a/palette/lab/struct.Lab.html +++ b/palette/lab/struct.Lab.html @@ -1,4 +1,4 @@ -Lab in palette::lab - Rust

Struct palette::lab::Lab

source ·
#[repr(C)]
pub struct Lab<Wp = D65, T = f32> { +Lab in palette::lab - Rust

Struct palette::lab::Lab

source ·
#[repr(C)]
pub struct Lab<Wp = D65, T = f32> { pub l: T, pub a: T, pub b: T, @@ -24,199 +24,199 @@
§b: T

b* goes from yellow at -128 to blue at 127.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lab<Wp, T>

source

pub const fn new(l: T, a: T, b: T) -> Lab<Wp, T>

Create a CIE L*a*b* color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, a\*, b\*) tuple.

-
source

pub fn from_components((l, a, b): (T, T, T)) -> Self

Convert from a (L\*, a\*, b\*) tuple.

-
source§

impl<Wp, T> Lab<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_a() -> T

Return the a value minimum.

-
source

pub fn max_a() -> T

Return the a value maximum.

-
source

pub fn min_b() -> T

Return the b value minimum.

-
source

pub fn max_b() -> T

Return the b value maximum.

-
source§

impl<Wp, T> Lab<Wp, &T>

source

pub fn copied(&self) -> Lab<Wp, T>where +

Implementations§

source§

impl<Wp, T> Lab<Wp, T>

source

pub const fn new(l: T, a: T, b: T) -> Lab<Wp, T>

Create a CIE L*a*b* color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, a\*, b\*) tuple.

+
source

pub fn from_components((l, a, b): (T, T, T)) -> Self

Convert from a (L\*, a\*, b\*) tuple.

+
source§

impl<Wp, T> Lab<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_a() -> T

Return the a value minimum.

+
source

pub fn max_a() -> T

Return the a value maximum.

+
source

pub fn min_b() -> T

Return the b value minimum.

+
source

pub fn max_b() -> T

Return the b value maximum.

+
source§

impl<Wp, T> Lab<Wp, &T>

source

pub fn copied(&self) -> Lab<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lab<Wp, T>where +

source

pub fn cloned(&self) -> Lab<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lab<Wp, &mut T>

source

pub fn set(&mut self, value: Lab<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lab<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lab<Wp, T>where +

source§

impl<Wp, T> Lab<Wp, &mut T>

source

pub fn set(&mut self, value: Lab<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lab<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lab<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lab<Wp, T>where +

source

pub fn cloned(&self) -> Lab<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lab<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lab<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lab<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lab<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Lab<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lab<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lab<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lab<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lab<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lab<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where - T: Add<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lab<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lab<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lab<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lab<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where + T: Add<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lab<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lab<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lab<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lab<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Hypot + Clone, - T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lab<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lab<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lab<Wp, T>

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<Wp, T> ColorDifference for Lab<Wp, T>where + T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lab<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lab<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lab<Wp, T>

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<Wp, T> ColorDifference for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, - Self: Into<LabColorDiff<T>>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lab<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>

source§

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

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

impl<Wp, T> Default for Lab<Wp, T>where - T: Zero,

source§

fn default() -> Lab<Wp, T>

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

impl<Wp, T> DeltaE for Lab<Wp, T>where + Self: Into<LabColorDiff<T>>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lab<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>

source§

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

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

impl<Wp, T> Default for Lab<Wp, T>where + T: Zero,

source§

fn default() -> Lab<Wp, T>

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

impl<Wp, T> DeltaE for Lab<Wp, T>where Self: EuclideanDistance<Scalar = T>, - T: Sqrt,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, -according to the color space’s specification.
source§

impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where - T: Div<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Lab<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Lab<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Lab<Wp, T>> for Lab<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lab<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where + T: Sqrt,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, +according to the color space’s specification.
source§

impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where + T: Div<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Lab<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Lab<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Lab<Wp, T>> for Lab<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lab<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lab<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lab<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for [T; 3]

source§

fn from(color: Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)

source§

fn from(color: Lab<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lab<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lab<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for [T; 3]

source§

fn from(color: Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)

source§

fn from(color: Lab<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lab<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lab<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, - Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where T: Real + Recip + Powi + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, T: Real + Powi + Cbrt + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lab<Wp, T>> for Lab<Wp, C>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lab<Wp, T>> for Lab<Wp, C>where Self: Extend<Lab<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lab<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lab<Wp, T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Lab<Wp, T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lab<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lab<Wp, T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Lab<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where Self: DeltaE<Scalar = T>, - T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self + T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self and other, according to the color space’s specification and later -improvements by Huang et al.
source§

impl<'a, Wp, C> IntoIterator for &'a Lab<Wp, C>where - &'a C: IntoIterator,

§

type Item = Lab<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lab<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Lab<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lab<Wp, C>where - C: IntoIterator,

§

type Item = Lab<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where +improvements by Huang et al.

source§

impl<'a, Wp, C> IntoIterator for &'a Lab<Wp, C>where + &'a C: IntoIterator,

§

type Item = Lab<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lab<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Lab<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lab<Wp, C>where + C: IntoIterator,

§

type Item = Lab<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lab<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lab<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lab<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lab<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where - T: Mul<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Lab<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Lab<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lab<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lab<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where + T: Mul<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Lab<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Lab<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Lab<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Lab<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -236,39 +236,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lab<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lab<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lab<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lab<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lab<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lab<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lab<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lab<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where - _A: Stimulus,

§

type Color = Lab<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where + _A: Stimulus,

§

type Color = Lab<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Lab<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lab<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Lab<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lab<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lab<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Lab<Wp, T>where diff --git a/palette/lab/type.Laba.html b/palette/lab/type.Laba.html index 686e76f4c..fbf19c4d8 100644 --- a/palette/lab/type.Laba.html +++ b/palette/lab/type.Laba.html @@ -1,3 +1,3 @@ -Laba in palette::lab - Rust

Type Definition palette::lab::Laba

source ·
pub type Laba<Wp = D65, T = f32> = Alpha<Lab<Wp, T>, T>;
Expand description

CIE L*a*b* (CIELAB) with an alpha component. See the Laba +Laba in palette::lab - Rust

Type Definition palette::lab::Laba

source ·
pub type Laba<Wp = D65, T = f32> = Alpha<Lab<Wp, T>, T>;
Expand description

CIE L*a*b* (CIELAB) with an alpha component. See the Laba implementation in Alpha.

\ No newline at end of file diff --git a/palette/lch/index.html b/palette/lch/index.html index 3f43559e7..5a275371a 100644 --- a/palette/lch/index.html +++ b/palette/lch/index.html @@ -1,3 +1,3 @@ -palette::lch - Rust

Module palette::lch

source ·
Expand description

Types for the CIE L*C*h° color space.

+palette::lch - Rust

Module palette::lch

source ·
Expand description

Types for the CIE L*C*h° color space.

Structs

Type Definitions

\ No newline at end of file diff --git a/palette/lch/struct.Iter.html b/palette/lch/struct.Iter.html index 4746557cc..263f218c3 100644 --- a/palette/lch/struct.Iter.html +++ b/palette/lch/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::lch - Rust

Struct palette::lch::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lch values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::lch - Rust

Struct palette::lch::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lch values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Lch<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Lch<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/lch/struct.Lch.html b/palette/lch/struct.Lch.html index 9a71aa832..0a6905c44 100644 --- a/palette/lch/struct.Lch.html +++ b/palette/lch/struct.Lch.html @@ -1,4 +1,4 @@ -Lch in palette::lch - Rust

Struct palette::lch::Lch

source ·
#[repr(C)]
pub struct Lch<Wp = D65, T = f32> { +Lch in palette::lch - Rust

Struct palette::lch::Lch

source ·
#[repr(C)]
pub struct Lch<Wp = D65, T = f32> { pub l: T, pub chroma: T, pub hue: LabHue<T>, @@ -18,192 +18,192 @@ etc.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lch<Wp, T>

source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*h° color.

-
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self

Create a CIE L*C*h° color. This is the same as Lch::new without the +

Implementations§

source§

impl<Wp, T> Lch<Wp, T>

source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*h° color.

+
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self

Create a CIE L*C*h° color. This is the same as Lch::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LabHue<T>)

Convert to a (L\*, C\*, h°) tuple.

-
source

pub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*, h°) tuple.

-
source§

impl<Wp, T> Lch<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_chroma() -> T

Return the chroma value minimum.

-
source

pub fn max_chroma() -> T

Return the chroma value maximum. This value does not cover the entire +

source

pub fn into_components(self) -> (T, T, LabHue<T>)

Convert to a (L\*, C\*, h°) tuple.

+
source

pub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*, h°) tuple.

+
source§

impl<Wp, T> Lch<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_chroma() -> T

Return the chroma value minimum.

+
source

pub fn max_chroma() -> T

Return the chroma value maximum. This value does not cover the entire color space, but covers enough to be practical for downsampling to smaller color spaces like sRGB.

-
source

pub fn max_extended_chroma() -> T

Return the chroma extended maximum value. This value covers the entire +

source

pub fn max_extended_chroma() -> T

Return the chroma extended maximum value. This value covers the entire color space and is included for completeness, but the additional range should be unnecessary for most use cases.

-
source§

impl<Wp, T> Lch<Wp, &T>

source

pub fn copied(&self) -> Lch<Wp, T>where +

source§

impl<Wp, T> Lch<Wp, &T>

source

pub fn copied(&self) -> Lch<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lch<Wp, T>where +

source

pub fn cloned(&self) -> Lch<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lch<Wp, &mut T>

source

pub fn set(&mut self, value: Lch<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lch<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lch<Wp, T>where +

source§

impl<Wp, T> Lch<Wp, &mut T>

source

pub fn set(&mut self, value: Lch<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lch<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lch<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lch<Wp, T>where +

source

pub fn cloned(&self) -> Lch<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lch<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lch<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lch<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-

source§

impl<Wp, T> Lch<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lch<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lch<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lch<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lch<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lch<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where - T: Add<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lch<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lch<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lch<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lch<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where + LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where + T: Add<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lch<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lch<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lch<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lch<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, - Self: IntoColorUnclamped<Lab<Wp, T>>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lch<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lch<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lch<Wp, T>

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<Wp, T> ColorDifference for Lch<Wp, T>where + Self: IntoColorUnclamped<Lab<Wp, T>>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lch<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lch<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lch<Wp, T>

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<Wp, T> ColorDifference for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Trigonometry + Abs + Sqrt + Powi + Exp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: Into<LabColorDiff<T>>,

CIEDE2000 distance metric for color difference.

-
§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>

source§

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

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

impl<Wp, T> Default for Lch<Wp, T>where +

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>

source§

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

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

impl<Wp, T> Default for Lch<Wp, T>where T: Zero + Real, - LabHue<T>: Default,

source§

fn default() -> Lch<Wp, T>

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

impl<Wp, T> DeltaE for Lch<Wp, T>where - Lab<Wp, T>: FromColorUnclamped<Self> + DeltaE<Scalar = T>,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, -according to the color space’s specification.
source§

impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where + LabHue<T>: Default,

source§

fn default() -> Lch<Wp, T>

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

impl<Wp, T> DeltaE for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Self> + DeltaE<Scalar = T>,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, +according to the color space’s specification.
source§

impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lch<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lch<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for [T; 3]

source§

fn from(color: Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)

source§

fn from(color: Lch<Wp, T>) -> (T, T, LabHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lch<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lch<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for [T; 3]

source§

fn from(color: Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)

source§

fn from(color: Lch<Wp, T>) -> (T, T, LabHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lch<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lch<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, - Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where + Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where Self: Extend<Lch<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lch<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lch<Wp, T>where - T: Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where - Lab<Wp, T>: FromColorUnclamped<Self> + ImprovedDeltaE<Scalar = T>,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lch<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lch<Wp, T>where + T: Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Self> + ImprovedDeltaE<Scalar = T>,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self and other, according to the color space’s specification and later -improvements by Huang et al.
source§

impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lch<Wp, C>where - C: IntoIterator,

§

type Item = Lch<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where +improvements by Huang et al.

source§

impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lch<Wp, C>where + C: IntoIterator,

§

type Item = Lch<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lch<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where T: PartialEq, - LabHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LabHue<T>: PartialEq,
source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Lch<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Lch<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -223,53 +223,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lch<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lch<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lch<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lch<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lch<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lch<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lch<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lch<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lch<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where - _A: Stimulus,

§

type Color = Lch<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where + _A: Stimulus,

§

type Color = Lch<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lch<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lch<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lch<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lch<Wp, T>where T: Eq, LabHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lch<Wp, T>where T: RefUnwindSafe, diff --git a/palette/lch/type.Lcha.html b/palette/lch/type.Lcha.html index 94effffb3..9c5453139 100644 --- a/palette/lch/type.Lcha.html +++ b/palette/lch/type.Lcha.html @@ -1,3 +1,3 @@ -Lcha in palette::lch - Rust

Type Definition palette::lch::Lcha

source ·
pub type Lcha<Wp = D65, T = f32> = Alpha<Lch<Wp, T>, T>;
Expand description

CIE L*C*h° with an alpha component. See the Lcha implementation in +Lcha in palette::lch - Rust

Type Definition palette::lch::Lcha

source ·
pub type Lcha<Wp = D65, T = f32> = Alpha<Lch<Wp, T>, T>;
Expand description

CIE L*C*h° with an alpha component. See the Lcha implementation in Alpha.

\ No newline at end of file diff --git a/palette/lchuv/index.html b/palette/lchuv/index.html index 79ea981cc..6cc169673 100644 --- a/palette/lchuv/index.html +++ b/palette/lchuv/index.html @@ -1,3 +1,3 @@ -palette::lchuv - Rust

Module palette::lchuv

source ·
Expand description

Types for the CIE L*C*uv h°uv color space.

+palette::lchuv - Rust

Module palette::lchuv

source ·
Expand description

Types for the CIE L*C*uv h°uv color space.

Structs

Type Definitions

\ No newline at end of file diff --git a/palette/lchuv/struct.Iter.html b/palette/lchuv/struct.Iter.html index c5bce029f..08974b60b 100644 --- a/palette/lchuv/struct.Iter.html +++ b/palette/lchuv/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::lchuv - Rust

Struct palette::lchuv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lchuv values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::lchuv - Rust

Struct palette::lchuv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Lchuv values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Lchuv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Lchuv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/lchuv/struct.Lchuv.html b/palette/lchuv/struct.Lchuv.html index 547522755..27cd7e782 100644 --- a/palette/lchuv/struct.Lchuv.html +++ b/palette/lchuv/struct.Lchuv.html @@ -1,4 +1,4 @@ -Lchuv in palette::lchuv - Rust

Struct palette::lchuv::Lchuv

source ·
#[repr(C)]
pub struct Lchuv<Wp = D65, T = f32> { +Lchuv in palette::lchuv - Rust

Struct palette::lchuv::Lchuv

source ·
#[repr(C)]
pub struct Lchuv<Wp = D65, T = f32> { pub l: T, pub chroma: T, pub hue: LuvHue<T>, @@ -19,176 +19,176 @@ etc.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lchuv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*uv h°uv color.

-
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>) -> Self

Create a CIE L*C*uv h°uv color. This is the same as Lchuv::new +

Implementations§

source§

impl<Wp, T> Lchuv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*uv h°uv color.

+
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>) -> Self

Create a CIE L*C*uv h°uv color. This is the same as Lchuv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LuvHue<T>)

Convert to a (L\*, C\*uv, h°uv) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*uv, h°uv) tuple.

-
source§

impl<Wp, T> Lchuv<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_chroma() -> T

Return the chroma value minimum.

-
source

pub fn max_chroma() -> T

Return the chroma value maximum.

-
source§

impl<Wp, T> Lchuv<Wp, &T>

source

pub fn copied(&self) -> Lchuv<Wp, T>where +

source

pub fn into_components(self) -> (T, T, LuvHue<T>)

Convert to a (L\*, C\*uv, h°uv) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*uv, h°uv) tuple.

+
source§

impl<Wp, T> Lchuv<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_chroma() -> T

Return the chroma value minimum.

+
source

pub fn max_chroma() -> T

Return the chroma value maximum.

+
source§

impl<Wp, T> Lchuv<Wp, &T>

source

pub fn copied(&self) -> Lchuv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lchuv<Wp, T>where +

source

pub fn cloned(&self) -> Lchuv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lchuv<Wp, &mut T>

source

pub fn set(&mut self, value: Lchuv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lchuv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lchuv<Wp, T>where +

source§

impl<Wp, T> Lchuv<Wp, &mut T>

source

pub fn set(&mut self, value: Lchuv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lchuv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lchuv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lchuv<Wp, T>where +

source

pub fn cloned(&self) -> Lchuv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lchuv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lchuv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lchuv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lchuv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-

source§

impl<Wp, T> Lchuv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lchuv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lchuv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lchuv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lchuv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lchuv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: Add<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lchuv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lchuv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lchuv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lchuv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lchuv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>

source§

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

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

impl<Wp, T> Default for Lchuv<Wp, T>where + LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: Add<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lchuv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lchuv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lchuv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lchuv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lchuv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>

source§

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

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

impl<Wp, T> Default for Lchuv<Wp, T>where T: Zero + Real, - LuvHue<T>: Default,

source§

fn default() -> Lchuv<Wp, T>

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

impl<Wp, T, C> Extend<Lchuv<Wp, T>> for Lchuv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lchuv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where + LuvHue<T>: Default,

source§

fn default() -> Lchuv<Wp, T>

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

impl<Wp, T, C> Extend<Lchuv<Wp, T>> for Lchuv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lchuv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lchuv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]

source§

fn from(color: Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)

source§

fn from(color: Lchuv<Wp, T>) -> (T, T, LuvHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lchuv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]

source§

fn from(color: Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)

source§

fn from(color: Lchuv<Wp, T>) -> (T, T, LuvHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lchuv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lchuv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<S as LumaStandard>::WhitePoint, T> ) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where T: Zero + Hypot, - Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lchuv<Wp, T>> for Lchuv<Wp, C>where + Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lchuv<Wp, T>> for Lchuv<Wp, C>where Self: Extend<Lchuv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lchuv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Lchuv<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lchuv<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lchuv<Wp, C>where - C: IntoIterator,

§

type Item = Lchuv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lchuv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Lchuv<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lchuv<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lchuv<Wp, C>where + C: IntoIterator,

§

type Item = Lchuv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: PartialEq, - LuvHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LuvHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Lchuv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Lchuv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -208,53 +208,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lchuv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lchuv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lchuv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lchuv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lchuv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lchuv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where - _A: Stimulus,

§

type Color = Lchuv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where + _A: Stimulus,

§

type Color = Lchuv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lchuv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lchuv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lchuv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lchuv<Wp, T>where T: Eq, LuvHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lchuv<Wp, T>where T: RefUnwindSafe, diff --git a/palette/lchuv/type.Lchuva.html b/palette/lchuv/type.Lchuva.html index 9bf4f199e..22bc75e01 100644 --- a/palette/lchuv/type.Lchuva.html +++ b/palette/lchuv/type.Lchuva.html @@ -1,3 +1,3 @@ -Lchuva in palette::lchuv - Rust

Type Definition palette::lchuv::Lchuva

source ·
pub type Lchuva<Wp = D65, T = f32> = Alpha<Lchuv<Wp, T>, T>;
Expand description

CIE L*C*uv h°uv with an alpha component. See the Lchuva implementation in +Lchuva in palette::lchuv - Rust

Type Definition palette::lchuv::Lchuva

source ·
pub type Lchuva<Wp = D65, T = f32> = Alpha<Lchuv<Wp, T>, T>;
Expand description

CIE L*C*uv h°uv with an alpha component. See the Lchuva implementation in Alpha.

\ No newline at end of file diff --git a/palette/luma/struct.Iter.html b/palette/luma/struct.Iter.html index d6eef0f55..4b22851ae 100644 --- a/palette/luma/struct.Iter.html +++ b/palette/luma/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::luma - Rust

Struct palette::luma::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Luma values.

-

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::luma - Rust

Struct palette::luma::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Luma values.

+

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where - I: Iterator,

§

type Item = Luma<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where + I: Iterator,

§

type Item = Luma<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/luma/struct.Luma.html b/palette/luma/struct.Luma.html index e18a658cc..c088c54cf 100644 --- a/palette/luma/struct.Luma.html +++ b/palette/luma/struct.Luma.html @@ -1,4 +1,4 @@ -Luma in palette::luma - Rust

Struct palette::luma::Luma

source ·
#[repr(C)]
pub struct Luma<S = Srgb, T = f32> { +Luma in palette::luma - Rust

Struct palette::luma::Luma

source ·
#[repr(C)]
pub struct Luma<S = Srgb, T = f32> { pub luma: T, pub standard: PhantomData<S>, }
Expand description

Luminance.

@@ -9,17 +9,17 @@ the set of operations that can be performed on it.

Fields§

§luma: T

The lightness of the color. 0.0 is black and 1.0 is white.

§standard: PhantomData<S>

The kind of RGB standard. sRGB is the default.

-

Implementations§

source§

impl<S, T> Luma<S, T>

source

pub const fn new(luma: T) -> Luma<S, T>

Create a luminance color.

-
source

pub fn into_format<U>(self) -> Luma<S, U>where +

Implementations§

source§

impl<S, T> Luma<S, T>

source

pub const fn new(luma: T) -> Luma<S, T>

Create a luminance color.

+
source

pub fn into_format<U>(self) -> Luma<S, U>where U: FromStimulus<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Luma<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Luma<S, U>) -> Selfwhere T: FromStimulus<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (T,)

Convert to a (luma,) tuple.

-
source

pub fn from_components((luma): (T,)) -> Self

Convert from a (luma,) tuple.

-
source§

impl<S, T> Luma<S, T>where - T: Stimulus,

source

pub fn min_luma() -> T

Return the luma value minimum.

-
source

pub fn max_luma() -> T

Return the luma value maximum.

-
source§

impl<S> Luma<S, u8>

source

pub fn into_u16<O>(self) -> u16where +

source

pub fn into_components(self) -> (T,)

Convert to a (luma,) tuple.

+
source

pub fn from_components((luma): (T,)) -> Self

Convert from a (luma,) tuple.

+

source§

impl<S, T> Luma<S, T>where + T: Stimulus,

source

pub fn min_luma() -> T

Return the luma value minimum.

+
source

pub fn max_luma() -> T

Return the luma value maximum.

+
source§

impl<S> Luma<S, u8>

source

pub fn into_u16<O>(self) -> u16where O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert to a packed u16 with with specifiable component order.

use palette::{luma, SrgbLuma};
@@ -34,7 +34,7 @@
 let integer = u16::from(SrgbLuma::new(96u8));
 assert_eq!(0xFF60, integer);

See Packed for more details.

-
source

pub fn from_u16<O>(color: u16) -> Selfwhere +

source

pub fn from_u16<O>(color: u16) -> Selfwhere O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert from a packed u16 with specifiable component order.

use palette::{luma, SrgbLuma};
@@ -49,8 +49,8 @@
 let luma = SrgbLuma::from(0x60u16);
 assert_eq!(SrgbLuma::new(96u8), luma);

See Packed for more details.

-
source§

impl<S, T> Luma<S, T>where - S: LumaStandard,

source

pub fn into_linear<U>(self) -> Luma<Linear<S::WhitePoint>, U>where +

source§

impl<S, T> Luma<S, T>where + S: LumaStandard,

source

pub fn into_linear<U>(self) -> Luma<Linear<S::WhitePoint>, U>where S::TransferFn: IntoLinear<U, T>,

Convert the color to linear luminance.

Some transfer functions allow the component type to be converted at the same time. This is usually offered with increased performance, compared @@ -61,7 +61,7 @@ let linear: LinLuma<_, f32> = SrgbLuma::new(96u8).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U>(color: Luma<Linear<S::WhitePoint>, U>) -> Luma<S, T>where +

source

pub fn from_linear<U>(color: Luma<Linear<S::WhitePoint>, U>) -> Luma<S, T>where S::TransferFn: FromLinear<U, T>,

Convert linear luminance to non-linear luminance.

Some transfer functions allow the component type to be converted at the same time. This is usually offered with increased performance, compared @@ -72,7 +72,7 @@ let encoded = SrgbLuma::<u8>::from_linear(LinLuma::new(0.95f32));

See the transfer function types in the encoding module for details and performance characteristics.

-

source§

impl<Wp, T> Luma<Linear<Wp>, T>

source

pub fn into_encoding<U, St>(self) -> Luma<St, U>where +

source§

impl<Wp, T> Luma<Linear<Wp>, T>

source

pub fn into_encoding<U, St>(self) -> Luma<St, U>where St: LumaStandard<WhitePoint = Wp>, St::TransferFn: FromLinear<T, U>,

Convert a linear color to a different encoding.

Some transfer functions allow the component type to be converted at the @@ -84,7 +84,7 @@ let encoded: SrgbLuma<u8> = LinLuma::new(0.95f32).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, St>(color: Luma<St, U>) -> Selfwhere +

source

pub fn from_encoding<U, St>(color: Luma<St, U>) -> Selfwhere St: LumaStandard<WhitePoint = Wp>, St::TransferFn: IntoLinear<T, U>,

Convert from linear luminance from a different encoding.

Some transfer functions allow the component type to be converted at the @@ -96,210 +96,210 @@ let linear = LinLuma::<_, f32>::from_encoding(SrgbLuma::new(96u8));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T> Luma<S, &T>

source

pub fn copied(&self) -> Luma<S, T>where +

source§

impl<S, T> Luma<S, &T>

source

pub fn copied(&self) -> Luma<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luma<S, T>where +

source

pub fn cloned(&self) -> Luma<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T> Luma<S, &mut T>

source

pub fn set(&mut self, value: Luma<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Luma<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Luma<S, T>where +

source§

impl<S, T> Luma<S, &mut T>

source

pub fn set(&mut self, value: Luma<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Luma<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Luma<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luma<S, T>where +

source

pub fn cloned(&self) -> Luma<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Luma<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Luma<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Luma<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Luma<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Luma<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Luma<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Luma<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Luma<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Luma<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Luma<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Luma<S, T>> for Luma<S, T>where - T: AbsDiffEq,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Luma<S, T>> for Luma<S, T>where - T: Add<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Luma<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Luma<S, T>> for Luma<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Luma<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Luma<S, T>

§

type Array = [T; 1]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Luma<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 1]> for Luma<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 1]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Luma<S, T>> for [T; 1]

source§

fn as_mut(&mut self) -> &mut Luma<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, f32>> for f32

source§

fn as_mut(&mut self) -> &mut Luma<S, f32>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, f64>> for f64

source§

fn as_mut(&mut self) -> &mut Luma<S, f64>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u128>> for u128

source§

fn as_mut(&mut self) -> &mut Luma<S, u128>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u16>> for u16

source§

fn as_mut(&mut self) -> &mut Luma<S, u16>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u32>> for u32

source§

fn as_mut(&mut self) -> &mut Luma<S, u32>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u64>> for u64

source§

fn as_mut(&mut self) -> &mut Luma<S, u64>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u8>> for u8

source§

fn as_mut(&mut self) -> &mut Luma<S, u8>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<T> for Luma<S, T>

source§

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

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Luma<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 1]> for Luma<S, T>

source§

fn as_ref(&self) -> &[T; 1]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Luma<S, T>> for [T; 1]

source§

fn as_ref(&self) -> &Luma<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, f32>> for f32

source§

fn as_ref(&self) -> &Luma<S, f32>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, f64>> for f64

source§

fn as_ref(&self) -> &Luma<S, f64>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u128>> for u128

source§

fn as_ref(&self) -> &Luma<S, u128>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u16>> for u16

source§

fn as_ref(&self) -> &Luma<S, u16>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u32>> for u32

source§

fn as_ref(&self) -> &Luma<S, u32>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u64>> for u64

source§

fn as_ref(&self) -> &Luma<S, u64>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u8>> for u8

source§

fn as_ref(&self) -> &Luma<S, u8>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<T> for Luma<S, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Luma<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Luma<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Luma<S, T>where - T: Clone,

source§

fn clone(&self) -> Luma<S, T>

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<S: Debug, T: Debug> Debug for Luma<S, T>

source§

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

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

impl<S, T> Default for Luma<S, T>where - T: Stimulus,

source§

fn default() -> Luma<S, T>

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

impl<S, T> Div<Luma<S, T>> for Luma<S, T>where - T: Div<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> Div<T> for Luma<S, T>where - T: Div<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> DivAssign<Luma<S, T>> for Luma<S, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<S, T> DivAssign<T> for Luma<S, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<S, T> EuclideanDistance for Luma<S, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<S, T, C> Extend<Luma<S, T>> for Luma<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luma<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 1]> for &'a Luma<S, T>

source§

fn from(array: &'a [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T]

source§

fn from(color: &'a Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T; 1]

source§

fn from(color: &'a Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, f32>> for &'a f32

source§

fn from(color: &'a Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, f64>> for &'a f64

source§

fn from(color: &'a Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u128>> for &'a u128

source§

fn from(color: &'a Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u16>> for &'a u16

source§

fn from(color: &'a Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u32>> for &'a u32

source§

fn from(color: &'a Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u64>> for &'a u64

source§

fn from(color: &'a Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u8>> for &'a u8

source§

fn from(color: &'a Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a f32> for &'a Luma<S, f32>where - f32: AsRef<Luma<S, f32>>,

source§

fn from(luma: &'a f32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a f64> for &'a Luma<S, f64>where - f64: AsRef<Luma<S, f64>>,

source§

fn from(luma: &'a f64) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 1]> for &'a mut Luma<S, T>

source§

fn from(array: &'a mut [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T; 1]

source§

fn from(color: &'a mut Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, f32>> for &'a mut f32

source§

fn from(color: &'a mut Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, f64>> for &'a mut f64

source§

fn from(color: &'a mut Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u128>> for &'a mut u128

source§

fn from(color: &'a mut Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u16>> for &'a mut u16

source§

fn from(color: &'a mut Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u32>> for &'a mut u32

source§

fn from(color: &'a mut Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u64>> for &'a mut u64

source§

fn from(color: &'a mut Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u8>> for &'a mut u8

source§

fn from(color: &'a mut Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut f32> for &'a mut Luma<S, f32>where - f32: AsMut<Luma<S, f32>>,

source§

fn from(luma: &'a mut f32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut f64> for &'a mut Luma<S, f64>where - f64: AsMut<Luma<S, f64>>,

source§

fn from(luma: &'a mut f64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u128> for &'a mut Luma<S, u128>where - u128: AsMut<Luma<S, u128>>,

source§

fn from(luma: &'a mut u128) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u16> for &'a mut Luma<S, u16>where - u16: AsMut<Luma<S, u16>>,

source§

fn from(luma: &'a mut u16) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u32> for &'a mut Luma<S, u32>where - u32: AsMut<Luma<S, u32>>,

source§

fn from(luma: &'a mut u32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u64> for &'a mut Luma<S, u64>where - u64: AsMut<Luma<S, u64>>,

source§

fn from(luma: &'a mut u64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u8> for &'a mut Luma<S, u8>where - u8: AsMut<Luma<S, u8>>,

source§

fn from(luma: &'a mut u8) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u128> for &'a Luma<S, u128>where - u128: AsRef<Luma<S, u128>>,

source§

fn from(luma: &'a u128) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u16> for &'a Luma<S, u16>where - u16: AsRef<Luma<S, u16>>,

source§

fn from(luma: &'a u16) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u32> for &'a Luma<S, u32>where - u32: AsRef<Luma<S, u32>>,

source§

fn from(luma: &'a u32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u64> for &'a Luma<S, u64>where - u64: AsRef<Luma<S, u64>>,

source§

fn from(luma: &'a u64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u8> for &'a Luma<S, u8>where - u8: AsRef<Luma<S, u8>>,

source§

fn from(luma: &'a u8) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Luma<S, T>; N]> for Luma<S, V>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Luma<S, T>> for Luma<S, T>where + T: AbsDiffEq,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Luma<S, T>> for Luma<S, T>where + T: Add<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Luma<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Luma<S, T>> for Luma<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Luma<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Luma<S, T>

§

type Array = [T; 1]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Luma<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 1]> for Luma<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 1]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Luma<S, T>> for [T; 1]

source§

fn as_mut(&mut self) -> &mut Luma<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, f32>> for f32

source§

fn as_mut(&mut self) -> &mut Luma<S, f32>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, f64>> for f64

source§

fn as_mut(&mut self) -> &mut Luma<S, f64>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u128>> for u128

source§

fn as_mut(&mut self) -> &mut Luma<S, u128>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u16>> for u16

source§

fn as_mut(&mut self) -> &mut Luma<S, u16>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u32>> for u32

source§

fn as_mut(&mut self) -> &mut Luma<S, u32>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u64>> for u64

source§

fn as_mut(&mut self) -> &mut Luma<S, u64>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S> AsMut<Luma<S, u8>> for u8

source§

fn as_mut(&mut self) -> &mut Luma<S, u8>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<T> for Luma<S, T>

source§

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

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Luma<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 1]> for Luma<S, T>

source§

fn as_ref(&self) -> &[T; 1]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Luma<S, T>> for [T; 1]

source§

fn as_ref(&self) -> &Luma<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, f32>> for f32

source§

fn as_ref(&self) -> &Luma<S, f32>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, f64>> for f64

source§

fn as_ref(&self) -> &Luma<S, f64>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u128>> for u128

source§

fn as_ref(&self) -> &Luma<S, u128>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u16>> for u16

source§

fn as_ref(&self) -> &Luma<S, u16>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u32>> for u32

source§

fn as_ref(&self) -> &Luma<S, u32>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u64>> for u64

source§

fn as_ref(&self) -> &Luma<S, u64>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S> AsRef<Luma<S, u8>> for u8

source§

fn as_ref(&self) -> &Luma<S, u8>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<T> for Luma<S, T>

source§

fn as_ref(&self) -> &T

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Luma<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Luma<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Luma<S, T>where + T: Clone,

source§

fn clone(&self) -> Luma<S, T>

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<S: Debug, T: Debug> Debug for Luma<S, T>

source§

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

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

impl<S, T> Default for Luma<S, T>where + T: Stimulus,

source§

fn default() -> Luma<S, T>

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

impl<S, T> Div<Luma<S, T>> for Luma<S, T>where + T: Div<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> Div<T> for Luma<S, T>where + T: Div<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> DivAssign<Luma<S, T>> for Luma<S, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<S, T> DivAssign<T> for Luma<S, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<S, T> EuclideanDistance for Luma<S, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<S, T, C> Extend<Luma<S, T>> for Luma<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luma<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 1]> for &'a Luma<S, T>

source§

fn from(array: &'a [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T]

source§

fn from(color: &'a Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Luma<S, T>> for &'a [T; 1]

source§

fn from(color: &'a Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, f32>> for &'a f32

source§

fn from(color: &'a Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, f64>> for &'a f64

source§

fn from(color: &'a Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u128>> for &'a u128

source§

fn from(color: &'a Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u16>> for &'a u16

source§

fn from(color: &'a Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u32>> for &'a u32

source§

fn from(color: &'a Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u64>> for &'a u64

source§

fn from(color: &'a Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a Luma<S, u8>> for &'a u8

source§

fn from(color: &'a Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a f32> for &'a Luma<S, f32>where + f32: AsRef<Luma<S, f32>>,

source§

fn from(luma: &'a f32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a f64> for &'a Luma<S, f64>where + f64: AsRef<Luma<S, f64>>,

source§

fn from(luma: &'a f64) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 1]> for &'a mut Luma<S, T>

source§

fn from(array: &'a mut [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Luma<S, T>> for &'a mut [T; 1]

source§

fn from(color: &'a mut Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, f32>> for &'a mut f32

source§

fn from(color: &'a mut Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, f64>> for &'a mut f64

source§

fn from(color: &'a mut Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u128>> for &'a mut u128

source§

fn from(color: &'a mut Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u16>> for &'a mut u16

source§

fn from(color: &'a mut Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u32>> for &'a mut u32

source§

fn from(color: &'a mut Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u64>> for &'a mut u64

source§

fn from(color: &'a mut Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut Luma<S, u8>> for &'a mut u8

source§

fn from(color: &'a mut Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut f32> for &'a mut Luma<S, f32>where + f32: AsMut<Luma<S, f32>>,

source§

fn from(luma: &'a mut f32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut f64> for &'a mut Luma<S, f64>where + f64: AsMut<Luma<S, f64>>,

source§

fn from(luma: &'a mut f64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u128> for &'a mut Luma<S, u128>where + u128: AsMut<Luma<S, u128>>,

source§

fn from(luma: &'a mut u128) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u16> for &'a mut Luma<S, u16>where + u16: AsMut<Luma<S, u16>>,

source§

fn from(luma: &'a mut u16) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u32> for &'a mut Luma<S, u32>where + u32: AsMut<Luma<S, u32>>,

source§

fn from(luma: &'a mut u32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u64> for &'a mut Luma<S, u64>where + u64: AsMut<Luma<S, u64>>,

source§

fn from(luma: &'a mut u64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a mut u8> for &'a mut Luma<S, u8>where + u8: AsMut<Luma<S, u8>>,

source§

fn from(luma: &'a mut u8) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u128> for &'a Luma<S, u128>where + u128: AsRef<Luma<S, u128>>,

source§

fn from(luma: &'a u128) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u16> for &'a Luma<S, u16>where + u16: AsRef<Luma<S, u16>>,

source§

fn from(luma: &'a u16) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u32> for &'a Luma<S, u32>where + u32: AsRef<Luma<S, u32>>,

source§

fn from(luma: &'a u32) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u64> for &'a Luma<S, u64>where + u64: AsRef<Luma<S, u64>>,

source§

fn from(luma: &'a u64) -> Self

Converts to this type from the input type.
source§

impl<'a, S> From<&'a u8> for &'a Luma<S, u8>where + u8: AsRef<Luma<S, u8>>,

source§

fn from(luma: &'a u8) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Luma<S, T>; N]> for Luma<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luma<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 1]> for Luma<S, T>

source§

fn from(array: [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<(T,)> for Luma<S, T>

source§

fn from(components: (T,)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 1], Global>> for Box<Luma<S, T>>

source§

fn from(array: Box<[T; 1]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Luma<S, T>> for [T; 1]

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Luma<S, T>> for (T,)

source§

fn from(color: Luma<S, T>) -> (T,)

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luma<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 1]> for Luma<S, T>

source§

fn from(array: [T; 1]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<(T,)> for Luma<S, T>

source§

fn from(components: (T,)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 1], Global>> for Box<Luma<S, T>>

source§

fn from(array: Box<[T; 1]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Luma<S, T>> for [T; 1]

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Luma<S, T>> for (T,)

source§

fn from(color: Luma<S, T>) -> (T,)

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Luma<S, T>> for Packed<O, P>where O: ComponentOrder<Lumaa<S, T>, P>, - Lumaa<S, T>: From<Luma<S, T>>,

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Luma<S, V>> for [Luma<S, T>; N]where + Lumaa<S, T>: From<Luma<S, T>>,

source§

fn from(color: Luma<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Luma<S, V>> for [Luma<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luma<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, f32>> for f32

source§

fn from(color: Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, f64>> for f64

source§

fn from(color: Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u128>> for u128

source§

fn from(color: Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u16>> for u16

source§

fn from(color: Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u32>> for u32

source§

fn from(color: Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u64>> for u64

source§

fn from(color: Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u8>> for u16

source§

fn from(color: Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u8>> for u8

source§

fn from(color: Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where - O: ComponentOrder<Lumaa<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<T> for Luma<S, T>

source§

fn from(luma: T) -> Self

Converts to this type from the input type.
source§

impl<S> From<u16> for Luma<S, u8>

source§

fn from(color: u16) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luma<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, f32>> for f32

source§

fn from(color: Luma<S, f32>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, f64>> for f64

source§

fn from(color: Luma<S, f64>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u128>> for u128

source§

fn from(color: Luma<S, u128>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u16>> for u16

source§

fn from(color: Luma<S, u16>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u32>> for u32

source§

fn from(color: Luma<S, u32>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u64>> for u64

source§

fn from(color: Luma<S, u64>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u8>> for u16

source§

fn from(color: Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Luma<S, u8>> for u8

source§

fn from(color: Luma<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Luma<S, u8>where + O: ComponentOrder<Lumaa<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Luma<S, T>>> for Luma<S, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<T> for Luma<S, T>

source§

fn from(luma: T) -> Self

Converts to this type from the input type.
source§

impl<S> From<u16> for Luma<S, u8>

source§

fn from(color: u16) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<S as LumaStandard>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<S as LumaStandard>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where Self: Mul<T, Output = Self>, Wp: WhitePoint<T>, S: LumaStandard<WhitePoint = Wp>, - S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where + S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where S: LumaStandard, S::TransferFn: IntoLinear<T, T>, - Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Luma<S2, T>> for Luma<S1, T>where + Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Luma<S2, T>> for Luma<S1, T>where S1: LumaStandard + 'static, S2: LumaStandard<WhitePoint = S1::WhitePoint> + 'static, S1::TransferFn: FromLinear<T, T>, - S2::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S2, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where + S2::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S2, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where S: RgbStandard + 'static, St: LumaStandard<WhitePoint = <S::Space as RgbSpace>::WhitePoint> + 'static, S::TransferFn: FromLinear<T, T>, St::TransferFn: IntoLinear<T, T>, - T: Clone,

source§

fn from_color_unclamped(color: Luma<St, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where + T: Clone,

source§

fn from_color_unclamped(color: Luma<St, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where + Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsl<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhwb<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Luma<S, T>> for Luma<S, C>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Luma<S, T>> for Luma<S, C>where Self: Extend<Luma<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luma<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> HasBoolMask for Luma<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Luma<S, C>where - &'a C: IntoIterator,

§

type Item = Luma<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Luma<S, C>where - &'a mut C: IntoIterator,

§

type Item = Luma<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Luma<S, C>where - C: IntoIterator,

§

type Item = Luma<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Luma<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luma<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> HasBoolMask for Luma<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Luma<S, C>where + &'a C: IntoIterator,

§

type Item = Luma<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Luma<S, C>where + &'a mut C: IntoIterator,

§

type Item = Luma<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Luma<S, C>where + C: IntoIterator,

§

type Item = Luma<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Luma<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Luma<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Luma<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Luma<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Luma<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LowerHex for Luma<S, T>where - T: LowerHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Mix for Luma<S, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Luma<S, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> Mul<Luma<S, T>> for Luma<S, T>where - T: Mul<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> Mul<T> for Luma<S, T>where - T: Mul<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> MulAssign<Luma<S, T>> for Luma<S, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<S, T> MulAssign<T> for Luma<S, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<S, T> PartialEq<Luma<S, T>> for Luma<S, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LowerHex for Luma<S, T>where + T: LowerHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Mix for Luma<S, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Luma<S, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> Mul<Luma<S, T>> for Luma<S, T>where + T: Mul<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> Mul<T> for Luma<S, T>where + T: Mul<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> MulAssign<Luma<S, T>> for Luma<S, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<S, T> MulAssign<T> for Luma<S, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<S, T> PartialEq<Luma<S, T>> for Luma<S, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> Premultiply for Luma<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> Premultiply for Luma<S, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<S, T> RelativeContrast for Luma<S, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<S, T> RelativeContrast for Luma<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: LumaStandard, - S::TransferFn: IntoLinear<T, T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + S::TransferFn: IntoLinear<T, T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -319,31 +319,31 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Luma<S, T>> for Luma<S, T>where - T: RelativeEq,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Luma<S, T>> for Luma<S, T>where + T: RelativeEq,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Luma<S, T>> for Luma<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Luma<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Luma<S, T>> for Luma<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Luma<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> Sub<Luma<S, T>> for Luma<S, T>where - T: Sub<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Luma<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Luma<S, T>> for Luma<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Luma<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Luma<S, T>

§

type Error = <&'a [T; 1] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Luma<S, T>

§

type Error = <&'a mut [T; 1] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S> UintCast for Luma<S, u128>

§

type Uint = u128

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u16>

§

type Uint = u16

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u32>

§

type Uint = u32

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u64>

§

type Uint = u64

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u8>

§

type Uint = u8

An unsigned integer with the same size as Self.
source§

impl<S, T> UlpsEq<Luma<S, T>> for Luma<S, T>where - T: UlpsEq,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T> UpperHex for Luma<S, T>where - T: UpperHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Wcag21RelativeContrast for Luma<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Luma<S, T>> for Luma<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Luma<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Luma<S, T>> for Luma<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Luma<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> Sub<Luma<S, T>> for Luma<S, T>where + T: Sub<Output = T>,

§

type Output = Luma<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Luma<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Luma<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Luma<S, T>> for Luma<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Luma<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Luma<S, T>

§

type Error = <&'a [T; 1] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Luma<S, T>

§

type Error = <&'a mut [T; 1] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S> UintCast for Luma<S, u128>

§

type Uint = u128

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u16>

§

type Uint = u16

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u32>

§

type Uint = u32

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u64>

§

type Uint = u64

An unsigned integer with the same size as Self.
source§

impl<S> UintCast for Luma<S, u8>

§

type Uint = u8

An unsigned integer with the same size as Self.
source§

impl<S, T> UlpsEq<Luma<S, T>> for Luma<S, T>where + T: UlpsEq,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T> UpperHex for Luma<S, T>where + T: UpperHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Wcag21RelativeContrast for Luma<S, T>where Self: IntoColor<Luma<Linear<D65>, T>>, S: LumaStandard<WhitePoint = D65>, - T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,

§

type Scalar = T

The scalar type used for luminance and contrast.
source§

fn relative_luminance(self) -> Luma<Linear<D65>, Self::Scalar>

Returns the WCAG 2.1 relative + T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,
§

type Scalar = T

The scalar type used for luminance and contrast.
source§

fn relative_luminance(self) -> Luma<Linear<D65>, Self::Scalar>

Returns the WCAG 2.1 relative luminance of self. Read more
source§

fn relative_contrast(self, other: Self) -> Self::Scalar

Returns the WCAG 2.1 relative luminance contrast between self and other. Read more
source§

fn has_min_contrast_text( @@ -366,18 +366,18 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA). Read more
source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where - _A: Stimulus,

§

type Color = Luma<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luma<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided +objects. Contrast is at least 3:1 (Level AA). Read more
source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where + _A: Stimulus,

§

type Color = Luma<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luma<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T> Copy for Luma<S, T>where - T: Copy,

source§

impl<S, T> Eq for Luma<S, T>where - T: Eq,

source§

impl<S, T> StimulusColor for Luma<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T> Copy for Luma<S, T>where + T: Copy,

source§

impl<S, T> Eq for Luma<S, T>where + T: Eq,

source§

impl<S, T> StimulusColor for Luma<S, T>where T: Stimulus,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Luma<S, T>where S: RefUnwindSafe, T: RefUnwindSafe,

§

impl<S, T> Send for Luma<S, T>where diff --git a/palette/luma/type.Lumaa.html b/palette/luma/type.Lumaa.html index 501405bde..ddcc23402 100644 --- a/palette/luma/type.Lumaa.html +++ b/palette/luma/type.Lumaa.html @@ -1,6 +1,6 @@ -Lumaa in palette::luma - Rust

Type Definition palette::luma::Lumaa

source ·
pub type Lumaa<S = Srgb, T = f32> = Alpha<Luma<S, T>, T>;
Expand description

Luminance with an alpha component. See the Lumaa implementation +Lumaa in palette::luma - Rust

Type Definition palette::luma::Lumaa

source ·
pub type Lumaa<S = Srgb, T = f32> = Alpha<Luma<S, T>, T>;
Expand description

Luminance with an alpha component. See the Lumaa implementation in Alpha.

-

Implementations§

source§

impl<S> Lumaa<S, u8>

source

pub fn into_u16<O>(self) -> u16where +

Implementations§

source§

impl<S> Lumaa<S, u8>

source

pub fn into_u16<O>(self) -> u16where O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert to a packed u16 with with a specific component order.

use palette::{luma, SrgbLumaa};
@@ -15,7 +15,7 @@
 let integer = u16::from(SrgbLumaa::new(96u8, 255));
 assert_eq!(0x60FF, integer);

See Packed for more details.

-
source

pub fn from_u16<O>(color: u16) -> Selfwhere +

source

pub fn from_u16<O>(color: u16) -> Selfwhere O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert from a packed u16 with a specific component order.

use palette::{luma, SrgbLumaa};
@@ -30,5 +30,5 @@
 let luma = SrgbLumaa::from(0x60FF);
 assert_eq!(SrgbLumaa::new(96u8, 255), luma);

See Packed for more details.

-

Trait Implementations§

source§

impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where - O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u16> for Lumaa<S, u8>

source§

fn from(color: u16) -> Self

Converts to this type from the input type.

\ No newline at end of file +

Trait Implementations§

source§

impl<S, T, O, P> From<Packed<O, P>> for Lumaa<S, T>where + O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u16> for Lumaa<S, u8>

source§

fn from(color: u16) -> Self

Converts to this type from the input type.

\ No newline at end of file diff --git a/palette/luv/index.html b/palette/luv/index.html index 4ed7c9587..4255c4710 100644 --- a/palette/luv/index.html +++ b/palette/luv/index.html @@ -1,3 +1,3 @@ -palette::luv - Rust

Module palette::luv

source ·
Expand description

Types for the CIE L*u*v* (CIELUV) color space.

+palette::luv - Rust

Module palette::luv

source ·
Expand description

Types for the CIE L*u*v* (CIELUV) color space.

Structs

  • An iterator for Luv values.
  • The CIE L*u*v* (CIELUV) color space.

Type Definitions

\ No newline at end of file diff --git a/palette/luv/struct.Iter.html b/palette/luv/struct.Iter.html index 45c5406a0..2f87bbfa9 100644 --- a/palette/luv/struct.Iter.html +++ b/palette/luv/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::luv - Rust

Struct palette::luv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Luv values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::luv - Rust

Struct palette::luv::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Luv values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Luv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Luv<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/luv/struct.Luv.html b/palette/luv/struct.Luv.html index 2db6cc340..cf2ec1032 100644 --- a/palette/luv/struct.Luv.html +++ b/palette/luv/struct.Luv.html @@ -1,4 +1,4 @@ -Luv in palette::luv - Rust

Struct palette::luv::Luv

source ·
#[repr(C)]
pub struct Luv<Wp = D65, T = f32> { +Luv in palette::luv - Rust

Struct palette::luv::Luv

source ·
#[repr(C)]
pub struct Luv<Wp = D65, T = f32> { pub l: T, pub u: T, pub v: T, @@ -21,186 +21,186 @@ 108.0).

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Luv<Wp, T>

source

pub const fn new(l: T, u: T, v: T) -> Self

Create a CIE L*u*v* color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, u\*, v\*) tuple.

-
source

pub fn from_components((l, u, v): (T, T, T)) -> Self

Convert from a (L\*, u\*, v\*) tuple.

-
source§

impl<Wp, T> Luv<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_u() -> T

Return the u value minimum.

-
source

pub fn max_u() -> T

Return the u value maximum.

-
source

pub fn min_v() -> T

Return the v value minimum.

-
source

pub fn max_v() -> T

Return the v value maximum.

-
source§

impl<Wp, T> Luv<Wp, &T>

source

pub fn copied(&self) -> Luv<Wp, T>where +

Implementations§

source§

impl<Wp, T> Luv<Wp, T>

source

pub const fn new(l: T, u: T, v: T) -> Self

Create a CIE L*u*v* color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, u\*, v\*) tuple.

+
source

pub fn from_components((l, u, v): (T, T, T)) -> Self

Convert from a (L\*, u\*, v\*) tuple.

+
source§

impl<Wp, T> Luv<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_u() -> T

Return the u value minimum.

+
source

pub fn max_u() -> T

Return the u value maximum.

+
source

pub fn min_v() -> T

Return the v value minimum.

+
source

pub fn max_v() -> T

Return the v value maximum.

+
source§

impl<Wp, T> Luv<Wp, &T>

source

pub fn copied(&self) -> Luv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luv<Wp, T>where +

source

pub fn cloned(&self) -> Luv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Luv<Wp, &mut T>

source

pub fn set(&mut self, value: Luv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Luv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Luv<Wp, T>where +

source§

impl<Wp, T> Luv<Wp, &mut T>

source

pub fn set(&mut self, value: Luv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Luv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Luv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luv<Wp, T>where +

source

pub fn cloned(&self) -> Luv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Luv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Luv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Luv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Luv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Luv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Luv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Luv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Luv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Luv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Luv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Luv<Wp, T>> for Luv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Luv<Wp, T>> for Luv<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where - T: Add<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Luv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Luv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Luv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Luv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Luv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Luv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Luv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Luv<Wp, T>

source§

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

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

impl<Wp, T> Default for Luv<Wp, T>where - T: Zero,

source§

fn default() -> Luv<Wp, T>

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

impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where - T: Div<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Luv<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Luv<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Luv<Wp, T>> for Luv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where + T: Add<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Luv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Luv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Luv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Luv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Luv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Luv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Luv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Luv<Wp, T>

source§

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

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

impl<Wp, T> Default for Luv<Wp, T>where + T: Zero,

source§

fn default() -> Luv<Wp, T>

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

impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where + T: Div<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Luv<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Luv<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Luv<Wp, T>> for Luv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Luv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for [T; 3]

source§

fn from(color: Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)

source§

fn from(color: Luv<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Luv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for [T; 3]

source§

fn from(color: Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)

source§

fn from(color: Luv<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where T: Zero + Hypot, - Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where + Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where T: Real + Zero + Recip + Powi + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where + T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Luv<Wp, T>> for Luv<Wp, C>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Luv<Wp, T>> for Luv<Wp, C>where Self: Extend<Luv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Luv<Wp, T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Luv<Wp, T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a Luv<Wp, C>where - &'a C: IntoIterator,

§

type Item = Luv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Luv<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Luv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Luv<Wp, C>where - C: IntoIterator,

§

type Item = Luv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Luv<Wp, T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Luv<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a Luv<Wp, C>where + &'a C: IntoIterator,

§

type Item = Luv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Luv<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Luv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Luv<Wp, C>where + C: IntoIterator,

§

type Item = Luv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Luv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Luv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Luv<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Luv<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where - T: Mul<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Luv<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Luv<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Luv<Wp, T>> for Luv<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Luv<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Luv<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where + T: Mul<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Luv<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Luv<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Luv<Wp, T>> for Luv<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Luv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Luv<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -220,39 +220,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Luv<Wp, T>> for Luv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Luv<Wp, T>> for Luv<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Luv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Luv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Luv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Luv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Luv<Wp, T>> for Luv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Luv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Luv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Luv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Luv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Luv<Wp, T>> for Luv<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where - _A: Stimulus,

§

type Color = Luv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where + _A: Stimulus,

§

type Color = Luv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Luv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Luv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Luv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Luv<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Luv<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Luv<Wp, T>where diff --git a/palette/luv/type.Luva.html b/palette/luv/type.Luva.html index 51a6ed517..ead656e56 100644 --- a/palette/luv/type.Luva.html +++ b/palette/luv/type.Luva.html @@ -1,3 +1,3 @@ -Luva in palette::luv - Rust

Type Definition palette::luv::Luva

source ·
pub type Luva<Wp = D65, T = f32> = Alpha<Luv<Wp, T>, T>;
Expand description

CIE L*u*v* (CIELUV) with an alpha component. See the Luva +Luva in palette::luv - Rust

Type Definition palette::luv::Luva

source ·
pub type Luva<Wp = D65, T = f32> = Alpha<Luv<Wp, T>, T>;
Expand description

CIE L*u*v* (CIELUV) with an alpha component. See the Luva implementation in Alpha.

\ No newline at end of file diff --git a/palette/num/trait.SaturatingAdd.html b/palette/num/trait.SaturatingAdd.html index 71fb05184..7f2b5d955 100644 --- a/palette/num/trait.SaturatingAdd.html +++ b/palette/num/trait.SaturatingAdd.html @@ -8,16 +8,16 @@

Required Methods§

source

fn saturating_add(self, other: Rhs) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.

Implementations on Foreign Types§

source§

impl SaturatingAdd<u8> for u8

§

type Output = u8

source§

fn saturating_add(self, other: Self) -> Self

source§

impl SaturatingAdd<u128> for u128

§

type Output = u128

source§

fn saturating_add(self, other: Self) -> Self

source§

impl SaturatingAdd<u64> for u64

§

type Output = u64

source§

fn saturating_add(self, other: Self) -> Self

source§

impl SaturatingAdd<u32> for u32

§

type Output = u32

source§

fn saturating_add(self, other: Self) -> Self

source§

impl SaturatingAdd<u16> for u16

§

type Output = u16

source§

fn saturating_add(self, other: Self) -> Self

Implementors§

source§

impl<C, T> SaturatingAdd<Alpha<C, T>> for Alpha<C, T>where C: SaturatingAdd, - T: SaturatingAdd,

§

type Output = Alpha<<C as SaturatingAdd<C>>::Output, <T as SaturatingAdd<T>>::Output>

source§

impl<S, T> SaturatingAdd<Luma<S, T>> for Luma<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingAdd<Rgb<S, T>> for Rgb<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

source§

impl<S, T> SaturatingAdd<T> for Luma<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingAdd<T> for Rgb<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where + T: SaturatingAdd,

§

type Output = Alpha<<C as SaturatingAdd<C>>::Output, <T as SaturatingAdd<T>>::Output>

source§

impl<S, T> SaturatingAdd<Luma<S, T>> for Luma<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingAdd<Rgb<S, T>> for Rgb<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

source§

impl<S, T> SaturatingAdd<T> for Luma<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingAdd<T> for Rgb<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hwb<S, T>

source§

impl<T> SaturatingAdd<Okhsl<T>> for Okhsl<T>where T: SaturatingAdd<Output = T>,

§

type Output = Okhsl<T>

source§

impl<T> SaturatingAdd<Okhsv<T>> for Okhsv<T>where T: SaturatingAdd<Output = T>,

§

type Output = Okhsv<T>

source§

impl<T> SaturatingAdd<Okhwb<T>> for Okhwb<T>where @@ -30,18 +30,18 @@ T: SaturatingAdd<Output = T> + Clone,

§

type Output = Oklab<T>

source§

impl<T> SaturatingAdd<T> for Oklch<T>where T: SaturatingAdd<Output = T> + Clone,

§

type Output = Oklch<T>

source§

impl<T, C> SaturatingAdd<T> for Alpha<C, T>where T: SaturatingAdd + Clone, - C: SaturatingAdd<T>,

§

type Output = Alpha<<C as SaturatingAdd<T>>::Output, <T as SaturatingAdd<T>>::Output>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<LabHue<T>> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<LuvHue<T>> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<OklabHue<T>> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<RgbHue<T>> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where + C: SaturatingAdd<T>,

§

type Output = Alpha<<C as SaturatingAdd<T>>::Output, <T as SaturatingAdd<T>>::Output>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<LabHue<T>> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<LuvHue<T>> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<OklabHue<T>> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<RgbHue<T>> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingAdd<Output = T>> SaturatingAdd<T> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where T: SaturatingAdd<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

\ No newline at end of file diff --git a/palette/num/trait.SaturatingSub.html b/palette/num/trait.SaturatingSub.html index 678c68a78..6b049d4a5 100644 --- a/palette/num/trait.SaturatingSub.html +++ b/palette/num/trait.SaturatingSub.html @@ -8,16 +8,16 @@

Required Methods§

source

fn saturating_sub(self, other: Rhs) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.

Implementations on Foreign Types§

source§

impl SaturatingSub<u32> for u32

§

type Output = u32

source§

fn saturating_sub(self, other: Self) -> Self

source§

impl SaturatingSub<u64> for u64

§

type Output = u64

source§

fn saturating_sub(self, other: Self) -> Self

source§

impl SaturatingSub<u16> for u16

§

type Output = u16

source§

fn saturating_sub(self, other: Self) -> Self

source§

impl SaturatingSub<u128> for u128

§

type Output = u128

source§

fn saturating_sub(self, other: Self) -> Self

source§

impl SaturatingSub<u8> for u8

§

type Output = u8

source§

fn saturating_sub(self, other: Self) -> Self

Implementors§

source§

impl<C, T> SaturatingSub<Alpha<C, T>> for Alpha<C, T>where C: SaturatingSub, - T: SaturatingSub,

§

type Output = Alpha<<C as SaturatingSub<C>>::Output, <T as SaturatingSub<T>>::Output>

source§

impl<S, T> SaturatingSub<Luma<S, T>> for Luma<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingSub<Rgb<S, T>> for Rgb<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

source§

impl<S, T> SaturatingSub<T> for Luma<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingSub<T> for Rgb<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where + T: SaturatingSub,

§

type Output = Alpha<<C as SaturatingSub<C>>::Output, <T as SaturatingSub<T>>::Output>

source§

impl<S, T> SaturatingSub<Luma<S, T>> for Luma<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingSub<Rgb<S, T>> for Rgb<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

source§

impl<S, T> SaturatingSub<T> for Luma<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Luma<S, T>

source§

impl<S, T> SaturatingSub<T> for Rgb<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Rgb<S, T>

source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where T: SaturatingSub<Output = T> + Clone,

§

type Output = Hwb<S, T>

source§

impl<T> SaturatingSub<Okhsl<T>> for Okhsl<T>where T: SaturatingSub<Output = T>,

§

type Output = Okhsl<T>

source§

impl<T> SaturatingSub<Okhsv<T>> for Okhsv<T>where T: SaturatingSub<Output = T>,

§

type Output = Okhsv<T>

source§

impl<T> SaturatingSub<Okhwb<T>> for Okhwb<T>where @@ -30,18 +30,18 @@ T: SaturatingSub<Output = T> + Clone,

§

type Output = Oklab<T>

source§

impl<T> SaturatingSub<T> for Oklch<T>where T: SaturatingSub<Output = T> + Clone,

§

type Output = Oklch<T>

source§

impl<T, C> SaturatingSub<T> for Alpha<C, T>where T: SaturatingSub + Clone, - C: SaturatingSub<T>,

§

type Output = Alpha<<C as SaturatingSub<T>>::Output, <T as SaturatingSub<T>>::Output>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<LabHue<T>> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<LuvHue<T>> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<OklabHue<T>> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<RgbHue<T>> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where + C: SaturatingSub<T>,

§

type Output = Alpha<<C as SaturatingSub<T>>::Output, <T as SaturatingSub<T>>::Output>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<LabHue<T>> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<LuvHue<T>> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<OklabHue<T>> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<RgbHue<T>> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for LabHue<T>

§

type Output = LabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for LuvHue<T>

§

type Output = LuvHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for OklabHue<T>

§

type Output = OklabHue<T>

source§

impl<T: SaturatingSub<Output = T>> SaturatingSub<T> for RgbHue<T>

§

type Output = RgbHue<T>

source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where T: SaturatingSub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

\ No newline at end of file diff --git a/palette/okhsl/struct.Okhsl.html b/palette/okhsl/struct.Okhsl.html index 7c9d00a2a..de519b161 100644 --- a/palette/okhsl/struct.Okhsl.html +++ b/palette/okhsl/struct.Okhsl.html @@ -105,21 +105,21 @@ V: FromScalarArray<N, Scalar = T>,
source§

fn from(colors: [Okhsl<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsl<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsl<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsl<T>> for [T; 3]

source§

fn from(color: Okhsl<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsl<V>> for [Okhsl<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsl<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, @@ -128,49 +128,49 @@ Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsl<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsl<T>where Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where T: RealAngle + One + Zero + Arithmetics + Sqrt + MinMax + PartialOrd + HasBoolMask<Mask = bool> + Powi + Cbrt + Trigonometry + Clone, Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where +
source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where T: Real + One + Zero + Arithmetics + Powi + Sqrt + Hypot + MinMax + Cbrt + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd + Clone, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsl<T>> for Okhsl<C>where Self: Extend<Okhsl<T>>, diff --git a/palette/okhsv/index.html b/palette/okhsv/index.html index df3043c9f..2b9b372c7 100644 --- a/palette/okhsv/index.html +++ b/palette/okhsv/index.html @@ -1,3 +1,3 @@ -palette::okhsv - Rust

Module palette::okhsv

source ·
Expand description

Types for the Okhsv color space.

+palette::okhsv - Rust

Module palette::okhsv

source ·
Expand description

Types for the Okhsv color space.

Structs

  • An iterator for Okhsv values.
  • A Hue/Saturation/Value representation of Oklab in the sRGB color space.

Type Definitions

\ No newline at end of file diff --git a/palette/okhsv/struct.Okhsv.html b/palette/okhsv/struct.Okhsv.html index fa673dfb4..715843359 100644 --- a/palette/okhsv/struct.Okhsv.html +++ b/palette/okhsv/struct.Okhsv.html @@ -32,52 +32,52 @@

Okhsl’s lightness component goes from black to white. Okhsv’s value component goes from black to non-black – a maximally bright color..

-

Implementations§

source§

impl<T> Okhsv<T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_value() -> T

Return the value value minimum.

-
source

pub fn max_value() -> T

Return the value value maximum.

-
source§

impl<T> Okhsv<&T>

source

pub fn copied(&self) -> Okhsv<T>where +

Implementations§

source§

impl<T> Okhsv<T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_value() -> T

Return the value value minimum.

+
source

pub fn max_value() -> T

Return the value value maximum.

+
source§

impl<T> Okhsv<&T>

source

pub fn copied(&self) -> Okhsv<T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Okhsv<T>where +

source

pub fn cloned(&self) -> Okhsv<T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<T> Okhsv<&mut T>

source

pub fn set(&mut self, value: Okhsv<T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Okhsv<&T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Okhsv<T>where +

source§

impl<T> Okhsv<&mut T>

source

pub fn set(&mut self, value: Okhsv<T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Okhsv<&T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Okhsv<T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Okhsv<T>where +

source

pub fn cloned(&self) -> Okhsv<T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<C> Okhsv<C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<C> Okhsv<C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Okhsv<&<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Okhsv<&mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<T> Okhsv<Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Okhsv<T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Okhsv<T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>> where +

source§

impl<T> Okhsv<Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Okhsv<T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Okhsv<T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T> Okhsv<T>

source

pub fn new<H: Into<OklabHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an Okhsv color.

-
source

pub const fn new_const(hue: OklabHue<T>, saturation: T, value: T) -> Self

Create an Okhsv color. This is the same as Okhsv::new without the +

source§

impl<T> Okhsv<T>

source

pub fn new<H: Into<OklabHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an Okhsv color.

+
source

pub const fn new_const(hue: OklabHue<T>, saturation: T, value: T) -> Self

Create an Okhsv color. This is the same as Okhsv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Okhsv<U>where +

source

pub fn into_format<U>(self) -> Okhsv<U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn into_components(self) -> (OklabHue<T>, T, T)

Convert to a (h, s, v) tuple.

-
source

pub fn from_components<H: Into<OklabHue<T>>>( +

source

pub fn into_components(self) -> (OklabHue<T>, T, T)

Convert to a (h, s, v) tuple.

+
source

pub fn from_components<H: Into<OklabHue<T>>>( (hue, saturation, value): (H, T, T) ) -> Self

Convert from a (h, s, v) tuple.

Trait Implementations§

source§

impl<T> AbsDiffEq<Okhsv<T>> for Okhsv<T>where @@ -91,89 +91,88 @@ T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Okhsv<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Okhsv<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Okhsv<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Okhsv<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Okhsv<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Okhsv<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Okhsv<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Okhsv<T>> for [T; 3]

source§

fn as_ref(&self) -> &Okhsv<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Okhsv<T>where T: Clamp + Real + Arithmetics + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Okhsv<T>where - T: ClampAssign + Real + Arithmetics + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Okhsv<T>

source§

fn clone(&self) -> Okhsv<T>

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<T: Debug> Debug for Okhsv<T>

source§

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

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

impl<T> Default for Okhsv<T>where + T: ClampAssign + Real + Arithmetics + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Okhsv<T>

source§

fn clone(&self) -> Okhsv<T>

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<T: Debug> Debug for Okhsv<T>

source§

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

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

impl<T> Default for Okhsv<T>where T: Stimulus, - OklabHue<T>: Default,

source§

fn default() -> Okhsv<T>

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

impl<T, C> Extend<Okhsv<T>> for Okhsv<C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Okhsv<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where + OklabHue<T>: Default,

source§

fn default() -> Okhsv<T>

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

impl<T, C> Extend<Okhsv<T>> for Okhsv<C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Okhsv<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhsv<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsv<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>where - T: Zero + MinMax,

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for [T; 3]

source§

fn from(color: Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)

source§

fn from(color: Okhsv<T>) -> (OklabHue<T>, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhsv<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsv<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for [T; 3]

source§

fn from(color: Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)

source§

fn from(color: Okhsv<T>) -> (OklabHue<T>, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsv<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsv<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

+ Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,
source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where T: RealAngle + PartialOrd + HasBoolMask<Mask = bool> + MinMax + Powi + Arithmetics + Clone + One + Zero + Cbrt + Trigonometry, - Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where + Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where T: Real + MinMax + Clone + Powi + Sqrt + Cbrt + Arithmetics + Trigonometry + Zero + Hypot + One + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

Converts lab to Okhsv in the bounds of sRGB.

See

See srgb_to_okhsv. This implementation differs from srgb_to_okhsv in that it starts with the lab value and produces hues in degrees, whereas srgb_to_okhsv produces degree/360.

-
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsv<T>where +

source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsv<T>> for Okhsv<C>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsv<T>> for Okhsv<C>where Self: Extend<Okhsv<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Okhsv<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Okhsv<T>where - T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhsv<T>where + T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhsv<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, C> IntoIterator for &'a Okhsv<C>where &'a C: IntoIterator + 'a,

§

type Item = Okhsv<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Okhsv<C>where &'a mut C: IntoIterator + 'a,

§

type Item = Okhsv<<&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<C> IntoIterator for Okhsv<C>where diff --git a/palette/okhwb/struct.Okhwb.html b/palette/okhwb/struct.Okhwb.html index cbdb294de..88af52a58 100644 --- a/palette/okhwb/struct.Okhwb.html +++ b/palette/okhwb/struct.Okhwb.html @@ -86,11 +86,11 @@ V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhwb<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhwb<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhwb<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhwb<T>> for [T; 3]

source§

fn from(color: Okhwb<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhwb<V>> for [Okhwb<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhwb<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where _S: RgbStandard, @@ -102,53 +102,53 @@ D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhwb<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

-
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where + Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

+
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where - Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhwb<T>> for Okhwb<C>where + Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhwb<T>> for Okhwb<C>where Self: Extend<Okhwb<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Okhwb<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Okhwb<T>where T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhwb<T>where diff --git a/palette/oklab/index.html b/palette/oklab/index.html index 6c18e706c..f2129da38 100644 --- a/palette/oklab/index.html +++ b/palette/oklab/index.html @@ -1,2 +1,2 @@ -palette::oklab - Rust

Module palette::oklab

source ·
Expand description

Types for the Oklab color space.

+palette::oklab - Rust

Module palette::oklab

source ·
Expand description

Types for the Oklab color space.

Structs

Type Definitions

  • Oklab with an alpha component.
\ No newline at end of file diff --git a/palette/oklab/struct.Oklab.html b/palette/oklab/struct.Oklab.html index 651467f27..8d2f12387 100644 --- a/palette/oklab/struct.Oklab.html +++ b/palette/oklab/struct.Oklab.html @@ -141,8 +141,8 @@

Lightening / Dar T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Oklab<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Oklab<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Oklab<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Oklab<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Oklab<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Oklab<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Oklab<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Oklab<T>> for [T; 3]

source§

fn as_ref(&self) -> &Oklab<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Oklab<T>where T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Oklab<T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklab<T>

source§

fn clone(&self) -> Oklab<T>

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<T: Debug> Debug for Oklab<T>

source§

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

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

impl<T> Default for Oklab<T>where - T: Zero,

source§

fn default() -> Self

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

impl<T> Div<Oklab<T>> for Oklab<T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklab<T>

source§

fn clone(&self) -> Oklab<T>

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<T: Debug> Debug for Oklab<T>

source§

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

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

impl<T> Default for Oklab<T>where + T: Zero,

source§

fn default() -> Self

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

impl<T> Div<Oklab<T>> for Oklab<T>where T: Div<Output = T>,

§

type Output = Oklab<T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<T> Div<T> for Oklab<T>where T: Div<Output = T> + Clone,

§

type Output = Oklab<T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<T> DivAssign<Oklab<T>> for Oklab<T>where T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<T> DivAssign<T> for Oklab<T>where @@ -150,93 +150,93 @@

Lightening / Dar T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<T, C> Extend<Oklab<T>> for Oklab<C>where C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklab<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklab<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklab<T>> for &'a [T]

source§

fn from(color: &'a Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklab<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklab<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklab<T>; N]> for Oklab<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklab<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklab<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<(T, T, T)> for Oklab<T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for [T; 3]

source§

fn from(color: Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for (T, T, T)

source§

fn from(color: Oklab<T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklab<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklab<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<(T, T, T)> for Oklab<T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for [T; 3]

source§

fn from(color: Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for (T, T, T)

source§

fn from(color: Oklab<T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Oklab<V>) -> Self

Converts to this type from the input type.
source§

impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklab<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where T: RealAngle + One + Zero + Arithmetics + Sqrt + MinMax + PartialOrd + HasBoolMask<Mask = bool> + Powi + Cbrt + Trigonometry + Clone, Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where +

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where T: RealAngle + PartialOrd + HasBoolMask<Mask = bool> + MinMax + Powi + Arithmetics + Clone + One + Zero + Cbrt + Trigonometry, - Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where - Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where + Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where T: Real + One + Zero + Arithmetics + Powi + Sqrt + Hypot + MinMax + Cbrt + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd + Clone, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where T: Real + MinMax + Clone + Powi + Sqrt + Cbrt + Arithmetics + Trigonometry + Zero + Hypot + One + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

Converts lab to Okhsv in the bounds of sRGB.

See

See srgb_to_okhsv. This implementation differs from srgb_to_okhsv in that it starts with the lab value and produces hues in degrees, whereas srgb_to_okhsv produces degree/360.

-
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklab<T>

source§

fn from_color_unclamped(color: Self) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklab<T>

source§

fn from_color_unclamped(color: Self) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where T: Hypot + Clone, - Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where + Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where T: Real + Arithmetics + Copy, S: RgbStandard, S::TransferFn: FromLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, Rgb<Linear<Srgb>, T>: IntoColorUnclamped<Self>, - Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where - T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where + Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where + T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where T: Real + Cbrt + Arithmetics + Copy, S: RgbStandard, S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, - Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where - T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where + T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklab<T>> for Oklab<C>where + Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklab<T>> for Oklab<C>where Self: Extend<Oklab<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Oklab<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Oklab<T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklab<T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklab<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<T> HyAb for Oklab<T>where T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, C> IntoIterator for &'a Oklab<C>where &'a C: IntoIterator,

§

type Item = Oklab<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Oklab<C>where diff --git a/palette/oklch/index.html b/palette/oklch/index.html index 321a4e983..b80ff462e 100644 --- a/palette/oklch/index.html +++ b/palette/oklch/index.html @@ -1,3 +1,3 @@ -palette::oklch - Rust

Module palette::oklch

source ·
Expand description

Types for the Oklch color space.

+palette::oklch - Rust

Module palette::oklch

source ·
Expand description

Types for the Oklch color space.

Structs

Type Definitions

\ No newline at end of file diff --git a/palette/oklch/struct.Oklch.html b/palette/oklch/struct.Oklch.html index a210c73b3..12afebb02 100644 --- a/palette/oklch/struct.Oklch.html +++ b/palette/oklch/struct.Oklch.html @@ -72,79 +72,79 @@ T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Oklch<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Oklch<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Oklch<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Oklch<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Oklch<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Oklch<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Oklch<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Oklch<T>> for [T; 3]

source§

fn as_ref(&self) -> &Oklch<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Oklch<T>where T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Oklch<T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklch<T>

source§

fn clone(&self) -> Oklch<T>

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<T: Debug> Debug for Oklch<T>

source§

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

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

impl<T> Default for Oklch<T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklch<T>

source§

fn clone(&self) -> Oklch<T>

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<T: Debug> Debug for Oklch<T>

source§

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

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

impl<T> Default for Oklch<T>where T: Zero + One, - OklabHue<T>: Default,

source§

fn default() -> Oklch<T>

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

impl<T, C> Extend<Oklch<T>> for Oklch<C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklch<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where + OklabHue<T>: Default,

source§

fn default() -> Oklch<T>

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

impl<T, C> Extend<Oklch<T>> for Oklch<C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklch<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklch<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklch<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for [T; 3]

source§

fn from(color: Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)

source§

fn from(color: Oklch<T>) -> (T, T, OklabHue<T>)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklch<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklch<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for [T; 3]

source§

fn from(color: Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)

source§

fn from(color: Oklch<T>) -> (T, T, OklabHue<T>)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Oklch<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where T: Hypot + Clone, - Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where + Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklch<T>

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklch<T>

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Oklch<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklch<T>> for Oklch<C>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklch<T>> for Oklch<C>where Self: Extend<Oklch<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Oklch<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Oklch<T>where - T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklch<T>where + T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklch<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, C> IntoIterator for &'a Oklch<C>where &'a C: IntoIterator + 'a,

§

type Item = Oklch<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Oklch<C>where &'a mut C: IntoIterator + 'a,

§

type Item = Oklch<<&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<C> IntoIterator for Oklch<C>where diff --git a/palette/rgb/enum.FromHexError.html b/palette/rgb/enum.FromHexError.html index c70e5d369..2fb3d88ac 100644 --- a/palette/rgb/enum.FromHexError.html +++ b/palette/rgb/enum.FromHexError.html @@ -1,4 +1,4 @@ -FromHexError in palette::rgb - Rust

Variants§

§

ParseIntError(ParseIntError)

An error occurred while parsing the string into a valid integer.

§

HexFormatError(&'static str)

The hex value was not in a valid 3 or 6 character format.

§

RgbaHexFormatError(&'static str)

The hex value was not in a valid 4 or 8 character format.

-

Trait Implementations§

source§

impl Debug for FromHexError

source§

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

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

impl Display for FromHexError

source§

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

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

impl Error for FromHexError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<&'static str> for FromHexError

source§

fn from(err: &'static str) -> FromHexError

Converts to this type from the input type.
source§

impl From<ParseIntError> for FromHexError

source§

fn from(err: ParseIntError) -> FromHexError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere +

Trait Implementations§

source§

impl Debug for FromHexError

source§

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

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

impl Display for FromHexError

source§

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

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

impl Error for FromHexError

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<&'static str> for FromHexError

source§

fn from(err: &'static str) -> FromHexError

Converts to this type from the input type.
source§

impl From<ParseIntError> for FromHexError

source§

fn from(err: ParseIntError) -> FromHexError

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, diff --git a/palette/rgb/struct.Iter.html b/palette/rgb/struct.Iter.html index c9da17aa7..207eecbb4 100644 --- a/palette/rgb/struct.Iter.html +++ b/palette/rgb/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::rgb - Rust

Struct palette::rgb::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Rgb values.

-

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::rgb - Rust

Struct palette::rgb::Iter

source ·
pub struct Iter<I, S> { /* private fields */ }
Expand description

An iterator for Rgb values.

+

Trait Implementations§

source§

impl<I, S> DoubleEndedIterator for Iter<I, S>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where - I: Iterator,

§

type Item = Rgb<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, S> ExactSizeIterator for Iter<I, S>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, S> Iterator for Iter<I, S>where + I: Iterator,

§

type Item = Rgb<S, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/rgb/struct.Rgb.html b/palette/rgb/struct.Rgb.html index 8743427a1..67659ebf7 100644 --- a/palette/rgb/struct.Rgb.html +++ b/palette/rgb/struct.Rgb.html @@ -1,4 +1,4 @@ -Rgb in palette::rgb - Rust

Struct palette::rgb::Rgb

source ·
#[repr(C)]
pub struct Rgb<S = Srgb, T = f32> { +Rgb in palette::rgb - Rust

Struct palette::rgb::Rgb

source ·
#[repr(C)]
pub struct Rgb<S = Srgb, T = f32> { pub red: T, pub green: T, pub blue: T, @@ -118,7 +118,7 @@

§blue: T

The amount of blue light, where 0.0 is no blue light and 1.0 (or 255u8) is the highest displayable amount.

§standard: PhantomData<S>

The kind of RGB standard. sRGB is the default.

-

Implementations§

source§

impl<S, T> Rgb<S, T>

source

pub const fn new(red: T, green: T, blue: T) -> Rgb<S, T>

Create an RGB color.

+

Implementations§

source§

impl<S, T> Rgb<S, T>

source

pub const fn new(red: T, green: T, blue: T) -> Rgb<S, T>

Create an RGB color.

It’s possible to create a color in one number format and convert it to another format with either into_format or into_linear.

@@ -131,7 +131,7 @@

// Changes the number format and converts to linear in one go. // This is faster than `.into_format().into_linear()`: let linear: LinSrgb<f32> = Srgb::new(171u8, 193, 35).into_linear();

-

source

pub fn into_format<U>(self) -> Rgb<S, U>where +

source

pub fn into_format<U>(self) -> Rgb<S, U>where U: FromStimulus<T>,

Convert the RGB components into another number type.

use palette::Srgb;
@@ -140,7 +140,7 @@ 

into_linear and into_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-

source

pub fn from_format<U>(color: Rgb<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Rgb<S, U>) -> Selfwhere T: FromStimulus<U>,

Convert the RGB components from another number type.

use palette::Srgb;
@@ -149,16 +149,16 @@ 

from_linear and from_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-

source

pub fn into_components(self) -> (T, T, T)

Convert to a (red, green, blue) tuple.

-
source

pub fn from_components((red, green, blue): (T, T, T)) -> Self

Convert from a (red, green, blue) tuple.

-
source§

impl<S, T> Rgb<S, T>where - T: Stimulus,

source

pub fn min_red() -> T

Return the red value minimum.

-
source

pub fn max_red() -> T

Return the red value maximum.

-
source

pub fn min_green() -> T

Return the green value minimum.

-
source

pub fn max_green() -> T

Return the green value maximum.

-
source

pub fn min_blue() -> T

Return the blue value minimum.

-
source

pub fn max_blue() -> T

Return the blue value maximum.

-
source§

impl<S> Rgb<S, u8>

source

pub fn into_u32<O>(self) -> u32where +

source

pub fn into_components(self) -> (T, T, T)

Convert to a (red, green, blue) tuple.

+
source

pub fn from_components((red, green, blue): (T, T, T)) -> Self

Convert from a (red, green, blue) tuple.

+
source§

impl<S, T> Rgb<S, T>where + T: Stimulus,

source

pub fn min_red() -> T

Return the red value minimum.

+
source

pub fn max_red() -> T

Return the red value maximum.

+
source

pub fn min_green() -> T

Return the green value minimum.

+
source

pub fn max_green() -> T

Return the green value maximum.

+
source

pub fn min_blue() -> T

Return the blue value minimum.

+
source

pub fn max_blue() -> T

Return the blue value maximum.

+
source§

impl<S> Rgb<S, u8>

source

pub fn into_u32<O>(self) -> u32where O: ComponentOrder<Rgba<S, u8>, u32>,

Convert to a packed u32 with with specifiable component order.

See Packed for more details.

-
source

pub fn from_u32<O>(color: u32) -> Selfwhere +

source

pub fn from_u32<O>(color: u32) -> Selfwhere O: ComponentOrder<Rgba<S, u8>, u32>,

Convert from a packed u32 with specifiable component order.

See Packed for more details.

-
source§

impl<S: RgbStandard, T> Rgb<S, T>

source

pub fn into_linear<U>(self) -> Rgb<Linear<S::Space>, U>where +

source§

impl<S: RgbStandard, T> Rgb<S, T>

source

pub fn into_linear<U>(self) -> Rgb<Linear<S::Space>, U>where S::TransferFn: IntoLinear<U, T>,

Convert the color to linear RGB.

Some transfer functions allow the component type to be converted at the same time. This is usually offered with increased performance, compared @@ -199,7 +199,7 @@

let linear: LinSrgb<f32> = Srgb::new(96u8, 127, 0).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U>(color: Rgb<Linear<S::Space>, U>) -> Selfwhere +

source

pub fn from_linear<U>(color: Rgb<Linear<S::Space>, U>) -> Selfwhere S::TransferFn: FromLinear<U, T>,

Convert linear RGB to non-linear RGB.

Some transfer functions allow the component type to be converted at the same time. This is usually offered with increased performance, compared @@ -210,7 +210,7 @@

let encoded = Srgb::<u8>::from_linear(LinSrgb::new(0.95f32, 0.90, 0.30));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S: RgbSpace, T> Rgb<Linear<S>, T>

source

pub fn into_encoding<U, St>(self) -> Rgb<St, U>where +

source§

impl<S: RgbSpace, T> Rgb<Linear<S>, T>

source

pub fn into_encoding<U, St>(self) -> Rgb<St, U>where St: RgbStandard<Space = S>, St::TransferFn: FromLinear<T, U>,

Convert a linear color to a different encoding.

Some transfer functions allow the component type to be converted at the @@ -222,7 +222,7 @@

let encoded: Srgb<u8> = LinSrgb::new(0.95f32, 0.90, 0.30).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, St>(color: Rgb<St, U>) -> Selfwhere +

source

pub fn from_encoding<U, St>(color: Rgb<St, U>) -> Selfwhere St: RgbStandard<Space = S>, St::TransferFn: IntoLinear<T, U>,

Convert linear RGB from a different encoding.

Some transfer functions allow the component type to be converted at the @@ -234,124 +234,124 @@

let linear = LinSrgb::<f32>::from_encoding(Srgb::new(96u8, 127, 0));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T> Rgb<S, &T>

source

pub fn copied(&self) -> Rgb<S, T>where +

source§

impl<S, T> Rgb<S, &T>

source

pub fn copied(&self) -> Rgb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Rgb<S, T>where +

source

pub fn cloned(&self) -> Rgb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T> Rgb<S, &mut T>

source

pub fn set(&mut self, value: Rgb<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Rgb<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Rgb<S, T>where +

source§

impl<S, T> Rgb<S, &mut T>

source

pub fn set(&mut self, value: Rgb<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Rgb<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Rgb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Rgb<S, T>where +

source

pub fn cloned(&self) -> Rgb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Rgb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Rgb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Rgb<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Rgb<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Rgb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Rgb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Rgb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Rgb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Rgb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Rgb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Rgb<S, T>> for Rgb<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Rgb<S, T>> for Rgb<S, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Rgb<S, T>> for Rgb<S, T>where - T: Add<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Rgb<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Rgb<S, T>> for Rgb<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Rgb<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Rgb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Rgb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Rgb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Rgb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Rgb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Rgb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Rgb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Rgb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Rgb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Rgb<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Rgb<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Rgb<S, T>where - T: Clone,

source§

fn clone(&self) -> Rgb<S, T>

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<S: Debug, T: Debug> Debug for Rgb<S, T>

source§

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

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

impl<S, T> Default for Rgb<S, T>where - T: Stimulus,

source§

fn default() -> Rgb<S, T>

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

impl<S, T> Div<Rgb<S, T>> for Rgb<S, T>where - T: Div<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> Div<T> for Rgb<S, T>where - T: Div<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> DivAssign<Rgb<S, T>> for Rgb<S, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<S, T> DivAssign<T> for Rgb<S, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<S, T> EuclideanDistance for Rgb<S, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<S, T, C> Extend<Rgb<S, T>> for Rgb<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Rgb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Rgb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T]

source§

fn from(color: &'a Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Rgb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Rgb<S, T>; N]> for Rgb<S, V>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Rgb<S, T>> for Rgb<S, T>where + T: Add<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Rgb<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Rgb<S, T>> for Rgb<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Rgb<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Rgb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Rgb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Rgb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Rgb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Rgb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Rgb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Rgb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Rgb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Rgb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Rgb<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Rgb<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Rgb<S, T>where + T: Clone,

source§

fn clone(&self) -> Rgb<S, T>

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<S: Debug, T: Debug> Debug for Rgb<S, T>

source§

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

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

impl<S, T> Default for Rgb<S, T>where + T: Stimulus,

source§

fn default() -> Rgb<S, T>

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

impl<S, T> Div<Rgb<S, T>> for Rgb<S, T>where + T: Div<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> Div<T> for Rgb<S, T>where + T: Div<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<S, T> DivAssign<Rgb<S, T>> for Rgb<S, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<S, T> DivAssign<T> for Rgb<S, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<S, T> EuclideanDistance for Rgb<S, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<S, T, C> Extend<Rgb<S, T>> for Rgb<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Rgb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Rgb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T]

source§

fn from(color: &'a Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Rgb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Rgb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Rgb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Rgb<S, T>; N]> for Rgb<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Rgb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Rgb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<(T, T, T)> for Rgb<S, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Rgb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where - O: ComponentOrder<Rgba<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgb<U>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Rgb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Rgb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<(T, T, T)> for Rgb<S, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Rgb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, O, P> From<Packed<O, P>> for Rgb<S, u8>where + O: ComponentOrder<Rgba<S, u8>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<PreAlpha<Rgb<S, T>>> for Rgb<S, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgb<U>where Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgb: LinSrgb<T>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Linear<Srgb>, T>> for Srgba<U>where U: Stimulus, - Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgb: LinSrgb<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Rgb<S, T>> for [T; 3]

source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Rgb<S, T>> for (T, T, T)

source§

fn from(color: Rgb<S, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where + Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgb: LinSrgb<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Rgb<S, T>> for [T; 3]

source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Rgb<S, T>> for (T, T, T)

source§

fn from(color: Rgb<S, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<S, T, P, O> From<Rgb<S, T>> for Packed<O, P>where O: ComponentOrder<Rgba<S, T>, P>, - Rgba<S, T>: From<Rgb<S, T>>,

source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Rgb<S, V>> for [Rgb<S, T>; N]where + Rgba<S, T>: From<Rgb<S, T>>,

source§

fn from(color: Rgb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Rgb<S, V>> for [Rgb<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Rgb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Rgb<S, u8>> for u32

source§

fn from(color: Rgb<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Srgb, T>> for LinSrgb<U>where - Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgb: Srgb<T>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Srgb, T>> for LinSrgba<U>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Rgb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Rgb<S, u8>> for u32

source§

fn from(color: Rgb<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Srgb, T>> for LinSrgb<U>where + Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgb: Srgb<T>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Rgb<Srgb, T>> for LinSrgba<U>where U: Stimulus, - Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgb: Srgb<T>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u32> for Rgb<S, u8>

source§

fn from(color: u32) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where + Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgb: Srgb<T>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u32> for Rgb<S, u8>

source§

fn from(color: u32) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Zero + One + Abs + Round + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Round + Zero + One + Abs + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, St, T> FromColorUnclamped<Luma<St, T>> for Rgb<S, T>where S: RgbStandard + 'static, St: LumaStandard<WhitePoint = <S::Space as RgbSpace>::WhitePoint> + 'static, S::TransferFn: FromLinear<T, T>, St::TransferFn: IntoLinear<T, T>, - T: Clone,

source§

fn from_color_unclamped(color: Luma<St, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + T: Clone,

source§

fn from_color_unclamped(color: Luma<St, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where T: Real + Arithmetics + Copy, S: RgbStandard, S::TransferFn: FromLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, Rgb<Linear<Srgb>, T>: IntoColorUnclamped<Self>, - Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where + Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where T: RealAngle + Zero + One + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where T: RealAngle + One + Zero + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where T: Real + Cbrt + Arithmetics + Copy, S: RgbStandard, S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, - Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where + Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + FromScalar<Scalar = T::Scalar> + Clone, Wp: WhitePoint<T::Scalar>, @@ -359,38 +359,38 @@

TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = Wp>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Rgb<S2, T>> for Rgb<S1, T>where + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Rgb<S2, T>> for Rgb<S1, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::TransferFn: FromLinear<T, T>, S2::TransferFn: IntoLinear<T, T>, S2::Space: RgbSpace<WhitePoint = <S1::Space as RgbSpace>::WhitePoint>, Xyz<<S2::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Rgb<S2, T>>, - Rgb<S1, T>: FromColorUnclamped<Xyz<<S1::Space as RgbSpace>::WhitePoint, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S2, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where + Rgb<S1, T>: FromColorUnclamped<Xyz<<S1::Space as RgbSpace>::WhitePoint, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S2, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, @@ -398,7 +398,7 @@

RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, @@ -406,57 +406,57 @@

RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, S::TransferFn: FromLinear<T, T>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, <S::Space as RgbSpace>::WhitePoint: WhitePoint<T::Scalar>, T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + Clone + FromScalar<Scalar = T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( color: Xyz<<S::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Rgb<S, T>> for Rgb<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Rgb<S, T>> for Rgb<S, C>where Self: Extend<Rgb<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Rgb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S> FromStr for Rgb<S, u8>

source§

fn from_str(hex: &str) -> Result<Self, Self::Err>

Parses a color hex code of format ‘#ff00bb’ or ‘#abc’ (with or without the leading ‘#’) into a + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Rgb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S> FromStr for Rgb<S, u8>

source§

fn from_str(hex: &str) -> Result<Self, Self::Err>

Parses a color hex code of format ‘#ff00bb’ or ‘#abc’ (with or without the leading ‘#’) into a Rgb<S, u8> instance.

-
§

type Err = FromHexError

The associated error which can be returned from parsing.
source§

impl<S, T> GetHue for Rgb<S, T>where - T: Real + RealAngle + Trigonometry + Arithmetics + Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Rgb<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Rgb<S, C>where - &'a C: IntoIterator,

§

type Item = Rgb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Rgb<S, C>where - &'a mut C: IntoIterator,

§

type Item = Rgb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Rgb<S, C>where - C: IntoIterator,

§

type Item = Rgb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Rgb<S, T>where +

§

type Err = FromHexError

The associated error which can be returned from parsing.
source§

impl<S, T> GetHue for Rgb<S, T>where + T: Real + RealAngle + Trigonometry + Arithmetics + Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Rgb<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Rgb<S, C>where + &'a C: IntoIterator,

§

type Item = Rgb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Rgb<S, C>where + &'a mut C: IntoIterator,

§

type Item = Rgb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Rgb<S, C>where + C: IntoIterator,

§

type Item = Rgb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Rgb<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Rgb<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Rgb<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Rgb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Rgb<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LowerHex for Rgb<S, T>where - T: LowerHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Mix for Rgb<S, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Rgb<S, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> Mul<Rgb<S, T>> for Rgb<S, T>where - T: Mul<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> Mul<T> for Rgb<S, T>where - T: Mul<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> MulAssign<Rgb<S, T>> for Rgb<S, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<S, T> MulAssign<T> for Rgb<S, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<S, T> PartialEq<Rgb<S, T>> for Rgb<S, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LowerHex for Rgb<S, T>where + T: LowerHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Mix for Rgb<S, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Rgb<S, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> Mul<Rgb<S, T>> for Rgb<S, T>where + T: Mul<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> Mul<T> for Rgb<S, T>where + T: Mul<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<S, T> MulAssign<Rgb<S, T>> for Rgb<S, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<S, T> MulAssign<T> for Rgb<S, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<S, T> PartialEq<Rgb<S, T>> for Rgb<S, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> Premultiply for Rgb<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> Premultiply for Rgb<S, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<S, T> RelativeContrast for Rgb<S, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<S, T> RelativeContrast for Rgb<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -476,33 +476,33 @@

Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Rgb<S, T>> for Rgb<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Rgb<S, T>> for Rgb<S, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Rgb<S, T>> for Rgb<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Rgb<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Rgb<S, T>> for Rgb<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Rgb<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> Sub<Rgb<S, T>> for Rgb<S, T>where - T: Sub<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Rgb<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Rgb<S, T>> for Rgb<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Rgb<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Rgb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Rgb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Rgb<S, T>> for Rgb<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Rgb<S, T>> for Rgb<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Rgb<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Rgb<S, T>> for Rgb<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Rgb<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> Sub<Rgb<S, T>> for Rgb<S, T>where + T: Sub<Output = T>,

§

type Output = Rgb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Rgb<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Rgb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Rgb<S, T>> for Rgb<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Rgb<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Rgb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Rgb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Rgb<S, T>> for Rgb<S, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T> UpperHex for Rgb<S, T>where - T: UpperHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Wcag21RelativeContrast for Rgb<S, T>where + T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T> UpperHex for Rgb<S, T>where + T: UpperHex,

source§

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

Formats the value using the given formatter.
source§

impl<S, T> Wcag21RelativeContrast for Rgb<S, T>where Self: IntoColor<Luma<Linear<D65>, T>>, S: RgbStandard<Space = Srgb>, - T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,

§

type Scalar = T

The scalar type used for luminance and contrast.
source§

fn relative_luminance(self) -> Luma<Linear<D65>, Self::Scalar>

Returns the WCAG 2.1 relative + T: Real + Add<T, Output = T> + Div<T, Output = T> + PartialCmp + MinMax,
§

type Scalar = T

The scalar type used for luminance and contrast.
source§

fn relative_luminance(self) -> Luma<Linear<D65>, Self::Scalar>

Returns the WCAG 2.1 relative luminance of self. Read more
source§

fn relative_contrast(self, other: Self) -> Self::Scalar

Returns the WCAG 2.1 relative luminance contrast between self and other. Read more
source§

fn has_min_contrast_text( @@ -525,18 +525,18 @@

Scalar as HasBoolMask>::Mask

Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA). Read more
source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where - _A: Stimulus,

§

type Color = Rgb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Rgb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided +objects. Contrast is at least 3:1 (Level AA). Read more
source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where + _A: Stimulus,

§

type Color = Rgb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Rgb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T> Copy for Rgb<S, T>where - T: Copy,

source§

impl<S, T> Eq for Rgb<S, T>where - T: Eq,

source§

impl<S, T> StimulusColor for Rgb<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T> Copy for Rgb<S, T>where + T: Copy,

source§

impl<S, T> Eq for Rgb<S, T>where + T: Eq,

source§

impl<S, T> StimulusColor for Rgb<S, T>where T: Stimulus,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Rgb<S, T>where S: RefUnwindSafe, T: RefUnwindSafe,

§

impl<S, T> Send for Rgb<S, T>where diff --git a/palette/rgb/type.Rgba.html b/palette/rgb/type.Rgba.html index 3e59b382d..4143efabd 100644 --- a/palette/rgb/type.Rgba.html +++ b/palette/rgb/type.Rgba.html @@ -1,6 +1,6 @@ -Rgba in palette::rgb - Rust

Type Definition palette::rgb::Rgba

source ·
pub type Rgba<S = Srgb, T = f32> = Alpha<Rgb<S, T>, T>;
Expand description

Generic RGB with an alpha component. See the Rgba implementation in +Rgba in palette::rgb - Rust

Type Definition palette::rgb::Rgba

source ·
pub type Rgba<S = Srgb, T = f32> = Alpha<Rgb<S, T>, T>;
Expand description

Generic RGB with an alpha component. See the Rgba implementation in Alpha.

-

Implementations§

source§

impl<S> Rgba<S, u8>

source

pub fn into_u32<O>(self) -> u32where +

Implementations§

source§

impl<S> Rgba<S, u8>

source

pub fn into_u32<O>(self) -> u32where O: ComponentOrder<Rgba<S, u8>, u32>,

Convert to a packed u32 with with specifiable component order.

use palette::{rgb, Srgba};
@@ -15,7 +15,7 @@
 let integer = u32::from(Srgba::new(96u8, 127, 0, 255));
 assert_eq!(0x607F00FF, integer);

See Packed for more details.

-
source

pub fn from_u32<O>(color: u32) -> Selfwhere +

source

pub fn from_u32<O>(color: u32) -> Selfwhere O: ComponentOrder<Rgba<S, u8>, u32>,

Convert from a packed u32 with specifiable component order.

use palette::{rgb, Srgba};
@@ -30,7 +30,7 @@
 let rgba = Srgba::from(0x607F00FF);
 assert_eq!(Srgba::new(96u8, 127, 0, 255), rgba);

See Packed for more details.

-

Trait Implementations§

source§

impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where - O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u32> for Rgba<S, u8>

source§

fn from(color: u32) -> Self

Converts to this type from the input type.
source§

impl<S> FromStr for Rgba<S, u8>

source§

fn from_str(hex: &str) -> Result<Self, Self::Err>

Parses a color hex code of format ‘#ff00bbff’ or ‘#abcd’ (with or without the leading ‘#’) into a +

Trait Implementations§

source§

impl<S, T, O, P> From<Packed<O, P>> for Rgba<S, T>where + O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(packed: Packed<O, P>) -> Self

Converts to this type from the input type.
source§

impl<S> From<u32> for Rgba<S, u8>

source§

fn from(color: u32) -> Self

Converts to this type from the input type.
source§

impl<S> FromStr for Rgba<S, u8>

source§

fn from_str(hex: &str) -> Result<Self, Self::Err>

Parses a color hex code of format ‘#ff00bbff’ or ‘#abcd’ (with or without the leading ‘#’) into a Rgba<S, u8> instance.

§

type Err = FromHexError

The associated error which can be returned from parsing.

\ No newline at end of file diff --git a/palette/stimulus/trait.StimulusColor.html b/palette/stimulus/trait.StimulusColor.html index e6b714c3e..f2a668215 100644 --- a/palette/stimulus/trait.StimulusColor.html +++ b/palette/stimulus/trait.StimulusColor.html @@ -1,6 +1,6 @@ StimulusColor in palette::stimulus - Rust
pub trait StimulusColor { }
Expand description

A marker trait for colors where all components are stimuli.

Typical stimulus colors are RGB and XYZ.

-

Implementors§

source§

impl<S, T> StimulusColor for Luma<S, T>where - T: Stimulus,

source§

impl<S, T> StimulusColor for Rgb<S, T>where - T: Stimulus,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where +

Implementors§

source§

impl<S, T> StimulusColor for Luma<S, T>where + T: Stimulus,

source§

impl<S, T> StimulusColor for Rgb<S, T>where + T: Stimulus,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where T: Stimulus,

\ No newline at end of file diff --git a/palette/struct.Alpha.html b/palette/struct.Alpha.html index ad85e5e3c..2339de050 100644 --- a/palette/struct.Alpha.html +++ b/palette/struct.Alpha.html @@ -89,15 +89,15 @@

Access
source§

impl<C: Premultiply> Alpha<C, C::Scalar>

source

pub fn premultiply(self) -> PreAlpha<C>

Alpha mask the color by its transparency.

source§

impl<C, T: Stimulus> Alpha<C, T>

source

pub fn min_alpha() -> T

Return the alpha value minimum.

source

pub fn max_alpha() -> T

Return the alpha value maximum.

-
source§

impl<T, A> Alpha<Hsl<Srgb, T>, A>

Hsla implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hsl<Srgb, T>, A>

Hsla implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, saturation: T, lightness: T, alpha: A ) -> Self

Create an sRGB HSL color with transparency. This method can be used instead of Hsla::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, saturation: T, lightness: T, @@ -105,14 +105,14 @@

Access ) -> Self

source§

impl<S, T, A> Alpha<Hsl<S, T>, A>

Hsla implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hsl<S, T>, A>

Hsla implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, saturation: T, lightness: T, alpha: A ) -> Self

Create an HSL color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, saturation: T, lightness: T, @@ -120,31 +120,31 @@

Access ) -> Self

source

pub fn into_format<U, B>(self) -> Alpha<Hsl<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hsl<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hsl<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hsl<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, lightness, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, lightness, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, lightness, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, lightness, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hsl<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsl<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hsl<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsl<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsl<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsl<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsl<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsl<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsl<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsl<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hsl<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hsl<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsl<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -153,7 +153,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsl<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -162,38 +162,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hsl<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsl<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsl<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hsl<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsl<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsl<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, T>, A>

Hsluva implementations.

-
source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency.

-
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, T>, A>

Hsluva implementations.

+
source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency.

+
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T, alpha: A) -> Self

Create an HSLuv color with transparency. This is the same as Hsluva::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (LuvHue<T>, T, T, A)

Convert to a (hue, saturation, l, alpha) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (LuvHue<T>, T, T, A)

Convert to a (hue, saturation, l, alpha) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (hue, saturation, l, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, l, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsluv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsluv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsluv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Hsluv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Hsluv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsluv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -202,7 +202,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsluv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -211,24 +211,24 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Hsluv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsluv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Hsluv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsluv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsluv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T, A> Alpha<Hsv<Srgb, T>, A>

Hsva implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hsv<Srgb, T>, A>

Hsva implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, saturation: T, value: T, alpha: A ) -> Self

Create an sRGB HSV color with transparency. This method can be used instead of Hsva::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, saturation: T, value: T, @@ -236,14 +236,14 @@

Access ) -> Self

source§

impl<S, T, A> Alpha<Hsv<S, T>, A>

Hsva implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hsv<S, T>, A>

Hsva implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, saturation: T, value: T, alpha: A ) -> Self

Create an HSV color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, saturation: T, value: T, @@ -251,31 +251,31 @@

Access ) -> Self

source

pub fn into_format<U, B>(self) -> Alpha<Hsv<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hsv<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hsv<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hsv<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, value, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, saturation, value, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, value, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, value, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hsv<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsv<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hsv<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsv<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hsv<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hsv<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hsv<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hsv<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hsv<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hsv<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hsv<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hsv<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hsv<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -284,7 +284,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hsv<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -293,69 +293,69 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hsv<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hsv<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hsv<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hsv<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hsv<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hsv<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T, A> Alpha<Hwb<Srgb, T>, A>

Hwba implementations.

-
source

pub fn new_srgb<H: Into<RgbHue<T>>>( +

source§

impl<T, A> Alpha<Hwb<Srgb, T>, A>

Hwba implementations.

+
source

pub fn new_srgb<H: Into<RgbHue<T>>>( hue: H, whiteness: T, blackness: T, alpha: A ) -> Self

Create an sRGB HWB color with transparency. This method can be used instead of Hwba::new to help type inference.

-
source

pub const fn new_srgb_const( +

source

pub const fn new_srgb_const( hue: RgbHue<T>, whiteness: T, blackness: T, alpha: A ) -> Self

Create an sRGB HWB color with transparency. This is the same as Hwba::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T, A> Alpha<Hwb<S, T>, A>

Hwba implementations.

-
source

pub fn new<H: Into<RgbHue<T>>>( +

source§

impl<S, T, A> Alpha<Hwb<S, T>, A>

Hwba implementations.

+
source

pub fn new<H: Into<RgbHue<T>>>( hue: H, whiteness: T, blackness: T, alpha: A ) -> Self

Create an HWB color with transparency.

-
source

pub const fn new_const( +

source

pub const fn new_const( hue: RgbHue<T>, whiteness: T, blackness: T, alpha: A ) -> Self

Create an HWB color with transparency. This is the same as Hwba::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U, B>(self) -> Alpha<Hwb<S, U>, B>where +

source

pub fn into_format<U, B>(self) -> Alpha<Hwb<S, U>, B>where U: FromStimulus<T> + FromAngle<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Hwb<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Hwb<S, U>, B>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, whiteness, blackness, alpha) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T, A)

Convert to a (hue, whiteness, blackness, alpha) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, whiteness, blackness, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, whiteness, blackness, alpha) tuple.

-
source§

impl<S, T, A> Alpha<Hwb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hwb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Hwb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hwb<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Hwb<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Hwb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Hwb<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Hwb<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Hwb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Hwb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Hwb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Hwb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Hwb<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -364,7 +364,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Hwb<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -373,34 +373,34 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Hwb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Hwb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Hwb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Hwb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Hwb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Hwb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, T>, A>

Laba implementations.

-
source

pub const fn new(l: T, a: T, b: T, alpha: A) -> Self

Create a CIE L*a*b* with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (L\*, a\*, b\*, alpha) tuple.

-
source

pub fn from_components((l, a, b, alpha): (T, T, T, A)) -> Self

Convert from a (L\*, a\*, b\*, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lab<Wp, T>, A>

Laba implementations.

+
source

pub const fn new(l: T, a: T, b: T, alpha: A) -> Self

Create a CIE L*a*b* with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (L\*, a\*, b\*, alpha) tuple.

+
source

pub fn from_components((l, a, b, alpha): (T, T, T, A)) -> Self

Convert from a (L\*, a\*, b\*, alpha) tuple.

+
source§

impl<Wp, T, A> Alpha<Lab<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lab<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lab<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lab<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lab<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lab<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lab<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lab<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lab<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lab<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lab<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -409,7 +409,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lab<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -418,38 +418,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lab<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lab<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lab<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lab<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lab<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lab<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, T>, A>

Lcha implementations.

-
source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*h° color with transparency.

-
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>, alpha: A) -> Self

Create a CIE L*C*h° color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Lch<Wp, T>, A>

Lcha implementations.

+
source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*h° color with transparency.

+
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>, alpha: A) -> Self

Create a CIE L*C*h° color with transparency. This is the same as Lcha::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LabHue<T>, A)

Convert to a (L\*, C\*, h°, alpha) tuple.

-
source

pub fn from_components<H: Into<LabHue<T>>>( +

source

pub fn into_components(self) -> (T, T, LabHue<T>, A)

Convert to a (L\*, C\*, h°, alpha) tuple.

+
source

pub fn from_components<H: Into<LabHue<T>>>( (l, chroma, hue, alpha): (T, T, H, A) ) -> Self

Convert from a (L\*, C\*, h°, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lch<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lch<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lch<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lch<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lch<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lch<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lch<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lch<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lch<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lch<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lch<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -458,7 +458,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -467,38 +467,38 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lch<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lch<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lch<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lch<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lch<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lch<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, T>, A>

Lchuva implementations.

-
source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency.

-
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency. This is the same as +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, T>, A>

Lchuva implementations.

+
source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency.

+
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>, alpha: A) -> Self

Create a CIE L*C*uv h°uv color with transparency. This is the same as Lchuva::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LuvHue<T>, A)

Convert to a (L\*, C\*uv, h°uv, alpha) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (T, T, LuvHue<T>, A)

Convert to a (L\*, C\*uv, h°uv, alpha) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (l, chroma, hue, alpha): (T, T, H, A) ) -> Self

Convert from a (L\*, C\*uv, h°uv, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Lchuv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Lchuv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Lchuv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Lchuv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Lchuv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Lchuv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -507,7 +507,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Lchuv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -516,26 +516,26 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Lchuv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Lchuv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Lchuv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Lchuv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Lchuv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<S, T, A> Alpha<Luma<S, T>, A>

Lumaa implementations.

-
source

pub const fn new(luma: T, alpha: A) -> Self

Create a luminance color with transparency.

-
source

pub fn into_format<U, B>(self) -> Alpha<Luma<S, U>, B>where +

source§

impl<S, T, A> Alpha<Luma<S, T>, A>

Lumaa implementations.

+
source

pub const fn new(luma: T, alpha: A) -> Self

Create a luminance color with transparency.

+
source

pub fn into_format<U, B>(self) -> Alpha<Luma<S, U>, B>where U: FromStimulus<T>, B: FromStimulus<A>,

Convert into another component type.

-
source

pub fn from_format<U, B>(color: Alpha<Luma<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Luma<S, U>, B>) -> Selfwhere T: FromStimulus<U>, A: FromStimulus<B>,

Convert from another component type.

-
source

pub fn into_components(self) -> (T, A)

Convert to a (luma, alpha) tuple.

-
source

pub fn from_components((luma, alpha): (T, A)) -> Self

Convert from a (luma, alpha) tuple.

-
source§

impl<S> Alpha<Luma<S, u8>, u8>

source

pub fn into_u16<O>(self) -> u16where +

source

pub fn into_components(self) -> (T, A)

Convert to a (luma, alpha) tuple.

+
source

pub fn from_components((luma, alpha): (T, A)) -> Self

Convert from a (luma, alpha) tuple.

+
source§

impl<S> Alpha<Luma<S, u8>, u8>

source

pub fn into_u16<O>(self) -> u16where O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert to a packed u16 with with a specific component order.

See Packed for more details.

-
source

pub fn from_u16<O>(color: u16) -> Selfwhere +

source

pub fn from_u16<O>(color: u16) -> Selfwhere O: ComponentOrder<Lumaa<S, u8>, u16>,

Convert from a packed u16 with a specific component order.

See Packed for more details.

-
source§

impl<S, T, A> Alpha<Luma<S, T>, A>where - S: LumaStandard,

source

pub fn into_linear<U, B>(self) -> Alpha<Luma<Linear<S::WhitePoint>, U>, B>where +

source§

impl<S, T, A> Alpha<Luma<S, T>, A>where + S: LumaStandard,

source

pub fn into_linear<U, B>(self) -> Alpha<Luma<Linear<S::WhitePoint>, U>, B>where S::TransferFn: IntoLinear<U, T>, B: FromStimulus<A>,

Convert the color to linear luminance with transparency.

Some transfer functions allow the component type to be converted at the @@ -578,7 +578,7 @@

Access let linear: LinLumaa<_, f32> = SrgbLumaa::new(96u8, 38).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U, B>( +

source

pub fn from_linear<U, B>( color: Alpha<Luma<Linear<S::WhitePoint>, U>, B> ) -> Selfwhere S::TransferFn: FromLinear<U, T>, @@ -592,7 +592,7 @@

Access let encoded = SrgbLumaa::<u8>::from_linear(LinLumaa::new(0.95f32, 0.75));

See the transfer function types in the encoding module for details and performance characteristics.

-

source§

impl<Wp, T, A> Alpha<Luma<Linear<Wp>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Luma<St, U>, B>where +

source§

impl<Wp, T, A> Alpha<Luma<Linear<Wp>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Luma<St, U>, B>where St: LumaStandard<WhitePoint = Wp>, St::TransferFn: FromLinear<T, U>, B: FromStimulus<A>,

Convert a linear color to a different encoding with transparency.

@@ -605,7 +605,7 @@

Access let encoded: SrgbLumaa<u8> = LinLumaa::new(0.95f32, 0.75).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, B, St>(color: Alpha<Luma<St, U>, B>) -> Selfwhere +

source

pub fn from_encoding<U, B, St>(color: Alpha<Luma<St, U>, B>) -> Selfwhere St: LumaStandard<WhitePoint = Wp>, St::TransferFn: IntoLinear<T, U>, A: FromStimulus<B>,

Convert to linear luminance from a different encoding with transparency.

@@ -618,21 +618,21 @@

Access let linear = LinLumaa::<_, f32>::from_encoding(SrgbLumaa::new(96u8, 38));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T, A> Alpha<Luma<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where +

source§

impl<S, T, A> Alpha<Luma<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Luma<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luma<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Luma<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where +

source§

impl<S, T, A> Alpha<Luma<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luma<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Luma<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Luma<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luma<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Luma<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Luma<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Luma<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -641,7 +641,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Luma<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -650,34 +650,34 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Luma<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Luma<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Luma<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Luma<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Luma<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Luma<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, T>, A>

Luva implementations.

-
source

pub const fn new(l: T, u: T, v: T, alpha: A) -> Self

Create a CIE L*u*v* color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to u (L\*, u\*, v\*, alpha) tuple.

-
source

pub fn from_components((l, u, v, alpha): (T, T, T, A)) -> Self

Convert from u (L\*, u\*, v\*, alpha) tuple.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Luv<Wp, T>, A>

Luva implementations.

+
source

pub const fn new(l: T, u: T, v: T, alpha: A) -> Self

Create a CIE L*u*v* color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to u (L\*, u\*, v\*, alpha) tuple.

+
source

pub fn from_components((l, u, v, alpha): (T, T, T, A)) -> Self

Convert from u (L\*, u\*, v\*, alpha) tuple.

+
source§

impl<Wp, T, A> Alpha<Luv<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luv<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Luv<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Luv<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Luv<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Luv<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Luv<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Luv<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Luv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Luv<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Luv<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -686,7 +686,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Luv<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -695,11 +695,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Luv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Luv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Luv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Luv<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Luv<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Luv<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where @@ -791,21 +791,21 @@

Access

source

pub fn from_components<H: Into<OklabHue<T>>>( (hue, saturation, value, alpha): (H, T, T, A) ) -> Self

Convert from a (hue, saturation, value, alpha) tuple.

-
source§

impl<T, A> Alpha<Okhsv<&T>, &A>

source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where +

source§

impl<T, A> Alpha<Okhsv<&T>, &A>

source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where +

source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<T, A> Alpha<Okhsv<&mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Okhsv<T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Okhsv<&T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where +

source§

impl<T, A> Alpha<Okhsv<&mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Okhsv<T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Okhsv<&T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Okhsv<T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where +

source

pub fn cloned(&self) -> Alpha<Okhsv<T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Ct, Ca> Alpha<Okhsv<Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Ct, Ca> Alpha<Okhsv<Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Okhsv<&<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -814,7 +814,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Okhsv<&mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -823,11 +823,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<T, A> Alpha<Okhsv<Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Okhsv<T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Okhsv<T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where +

source§

impl<T, A> Alpha<Okhsv<Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Okhsv<T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Okhsv<T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

source§

impl<T, A> Alpha<Okhwb<T>, A>

Okhwba implementations.

source

pub fn new<H: Into<OklabHue<T>>>( @@ -979,9 +979,9 @@

Access

source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

source

pub fn drain<R>(&mut self, range: R) -> Iter<Iter<Drain<'_, T>>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<S, T, A> Alpha<Rgb<S, T>, A>

Rgba implementations.

-
source

pub const fn new(red: T, green: T, blue: T, alpha: A) -> Self

Non-linear RGB.

-
source

pub fn into_format<U, B>(self) -> Alpha<Rgb<S, U>, B>where +

source§

impl<S, T, A> Alpha<Rgb<S, T>, A>

Rgba implementations.

+
source

pub const fn new(red: T, green: T, blue: T, alpha: A) -> Self

Non-linear RGB.

+
source

pub fn into_format<U, B>(self) -> Alpha<Rgb<S, U>, B>where U: FromStimulus<T>, B: FromStimulus<A>,

Convert the RGBA components into other number types.

@@ -990,7 +990,7 @@

Access let rgba_u8: Srgba<u8> = Srgba::new(0.3, 0.7, 0.2, 0.5).into_format();

See also into_linear and into_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-
source

pub fn from_format<U, B>(color: Alpha<Rgb<S, U>, B>) -> Selfwhere +

source

pub fn from_format<U, B>(color: Alpha<Rgb<S, U>, B>) -> Selfwhere T: FromStimulus<U>, A: FromStimulus<B>,

Convert the RGBA components from other number types.

@@ -999,9 +999,9 @@

Access let rgba_u8 = Srgba::<u8>::from_format(Srgba::new(0.3, 0.7, 0.2, 0.5));

See also from_linear and from_encoding for a faster option if you need to change between linear and non-linear encoding at the same time.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (red, green, blue, alpha) tuple.

-
source

pub fn from_components((red, green, blue, alpha): (T, T, T, A)) -> Self

Convert from a (red, green, blue, alpha) tuple.

-
source§

impl<S> Alpha<Rgb<S, u8>, u8>

source

pub fn into_u32<O>(self) -> u32where +

source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (red, green, blue, alpha) tuple.

+
source

pub fn from_components((red, green, blue, alpha): (T, T, T, A)) -> Self

Convert from a (red, green, blue, alpha) tuple.

+
source§

impl<S> Alpha<Rgb<S, u8>, u8>

source

pub fn into_u32<O>(self) -> u32where O: ComponentOrder<Rgba<S, u8>, u32>,

Convert to a packed u32 with with specifiable component order.

See Packed for more details.

-
source

pub fn from_u32<O>(color: u32) -> Selfwhere +

source

pub fn from_u32<O>(color: u32) -> Selfwhere O: ComponentOrder<Rgba<S, u8>, u32>,

Convert from a packed u32 with specifiable component order.

See Packed for more details.

-
source§

impl<S: RgbStandard, T, A> Alpha<Rgb<S, T>, A>

source

pub fn into_linear<U, B>(self) -> Alpha<Rgb<Linear<S::Space>, U>, B>where +

source§

impl<S: RgbStandard, T, A> Alpha<Rgb<S, T>, A>

source

pub fn into_linear<U, B>(self) -> Alpha<Rgb<Linear<S::Space>, U>, B>where S::TransferFn: IntoLinear<U, T>, B: FromStimulus<A>,

Convert the color to linear RGB with transparency.

Some transfer functions allow the component type to be converted at the @@ -1043,7 +1043,7 @@

Access let linear: LinSrgba<f32> = Srgba::new(96u8, 127, 0, 38).into_linear();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_linear<U, B>(color: Alpha<Rgb<Linear<S::Space>, U>, B>) -> Selfwhere +

source

pub fn from_linear<U, B>(color: Alpha<Rgb<Linear<S::Space>, U>, B>) -> Selfwhere S::TransferFn: FromLinear<U, T>, A: FromStimulus<B>,

Convert linear RGB to non-linear RGB with transparency.

Some transfer functions allow the component type to be converted at the @@ -1055,7 +1055,7 @@

Access let encoded = Srgba::<u8>::from_linear(LinSrgba::new(0.95f32, 0.90, 0.30, 0.75));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S: RgbSpace, T, A> Alpha<Rgb<Linear<S>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Rgb<St, U>, B>where +

source§

impl<S: RgbSpace, T, A> Alpha<Rgb<Linear<S>, T>, A>

source

pub fn into_encoding<U, B, St>(self) -> Alpha<Rgb<St, U>, B>where St: RgbStandard<Space = S>, St::TransferFn: FromLinear<T, U>, B: FromStimulus<A>,

Convert a linear color to a different encoding with transparency.

@@ -1068,7 +1068,7 @@

Access let encoded: Srgba<u8> = LinSrgba::new(0.95f32, 0.90, 0.30, 0.75).into_encoding();

See the transfer function types in the encoding module for details and performance characteristics.

-
source

pub fn from_encoding<U, B, St>(color: Alpha<Rgb<St, U>, B>) -> Selfwhere +

source

pub fn from_encoding<U, B, St>(color: Alpha<Rgb<St, U>, B>) -> Selfwhere St: RgbStandard<Space = S>, St::TransferFn: IntoLinear<T, U>, A: FromStimulus<B>,

Convert RGB from a different encoding to linear with transparency.

@@ -1081,21 +1081,21 @@

Access let linear = LinSrgba::<f32>::from_encoding(Srgba::new(96u8, 127, 0, 38));

See the transfer function types in the encoding module for details and performance characteristics.

-
source§

impl<S, T, A> Alpha<Rgb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Rgb<S, &T>, &A>

source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T, A> Alpha<Rgb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Rgb<S, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Rgb<S, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where +

source§

impl<S, T, A> Alpha<Rgb<S, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Rgb<S, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Rgb<S, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Rgb<S, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Rgb<S, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, Ct, Ca> Alpha<Rgb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<S, Ct, Ca> Alpha<Rgb<S, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Rgb<S, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1104,7 +1104,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Rgb<S, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1113,41 +1113,41 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T, A> Alpha<Rgb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Rgb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Rgb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<S, T, A> Alpha<Rgb<S, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Rgb<S, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Rgb<S, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, S>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, T>, A>

Xyza implementations.

-
source

pub const fn new(x: T, y: T, z: T, alpha: A) -> Self

Create a CIE XYZ color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (X, Y, Z, alpha) tuple.

-
source

pub fn from_components((x, y, z, alpha): (T, T, T, A)) -> Self

Convert from a (X, Y, Z, alpha) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Alpha<Xyz<NewWp, T>, A>

Changes the reference white point without changing the color value.

+
source§

impl<Wp, T, A> Alpha<Xyz<Wp, T>, A>

Xyza implementations.

+
source

pub const fn new(x: T, y: T, z: T, alpha: A) -> Self

Create a CIE XYZ color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (X, Y, Z, alpha) tuple.

+
source

pub fn from_components((x, y, z, alpha): (T, T, T, A)) -> Self

Convert from a (X, Y, Z, alpha) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Alpha<Xyz<NewWp, T>, A>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Xyz<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Xyz<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Xyz<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Xyz<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Xyz<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Xyz<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Xyz<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1156,7 +1156,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Xyz<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1165,41 +1165,41 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Xyz<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Xyz<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Xyz<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Xyz<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Xyz<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, T>, A>

Yxya implementations.

-
source

pub const fn new(x: T, y: T, luma: T, alpha: A) -> Self

Create a CIE Yxy color with transparency.

-
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn from_components((x, y, luma, alpha): (T, T, T, A)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Alpha<Yxy<NewWp, T>, A>

Changes the reference white point without changing the color value.

+
source§

impl<Wp, T, A> Alpha<Yxy<Wp, T>, A>

Yxya implementations.

+
source

pub const fn new(x: T, y: T, luma: T, alpha: A) -> Self

Create a CIE Yxy color with transparency.

+
source

pub fn into_components(self) -> (T, T, T, A)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn from_components((x, y, luma, alpha): (T, T, T, A)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Alpha<Yxy<NewWp, T>, A>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, &T>, &A>

source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Alpha<Yxy<Wp, &T>, &A>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, &mut T>, &mut A>

source

pub fn set(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Alpha<Yxy<Wp, &T>, &A>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Alpha<Yxy<Wp, T>, A>where T: Copy, A: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where +

source

pub fn cloned(&self) -> Alpha<Yxy<Wp, T>, A>where T: Clone, A: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, Ct, Ca> Alpha<Yxy<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( +

source§

impl<Wp, Ct, Ca> Alpha<Yxy<Wp, Ct>, Ca>

source

pub fn get<'a, I, T, A>( &'a self, index: I ) -> Option<Alpha<Yxy<Wp, &<I as SliceIndex<[T]>>::Output>, &<I as SliceIndex<[A]>>::Output>>where @@ -1208,7 +1208,7 @@

Access Ct: AsRef<[T]>, Ca: AsRef<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T, A>( +

source

pub fn get_mut<'a, I, T, A>( &'a mut self, index: I ) -> Option<Alpha<Yxy<Wp, &mut <I as SliceIndex<[T]>>::Output>, &mut <I as SliceIndex<[A]>>::Output>>where @@ -1217,11 +1217,11 @@

Access Ct: AsMut<[T]>, Ca: AsMut<[A]>, I: SliceIndex<[T]> + SliceIndex<[A]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T, A> Alpha<Yxy<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Alpha<Yxy<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>( +

source§

impl<Wp, T, A> Alpha<Yxy<Wp, Vec<T>>, Vec<A>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Alpha<Yxy<Wp, T>, A>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Alpha<Yxy<Wp, T>, A>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>( &mut self, range: R ) -> Iter<Iter<Drain<'_, T>, Wp>, Drain<'_, A>> where @@ -1286,109 +1286,109 @@

Access C: DivAssign<T>,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Tc, Ta, C, A> Extend<Alpha<Tc, Ta>> for Alpha<C, A>where C: Extend<Tc>, A: Extend<Ta>,

source§

fn extend<T: IntoIterator<Item = Alpha<Tc, Ta>>>(&mut self, iter: T)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, C, T, const N: usize> From<&'a [T; N]> for &'a Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a Alpha<C, T>> for &'a [T; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut [T; N]> for &'a mut Alpha<C, T>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: &'a mut [T; N]) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, C, T, const N: usize> From<&'a mut Alpha<C, T>> for &'a mut [T; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: &'a mut Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsl<S, T>, T>; N]> for Alpha<Hsl<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsl<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsl<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Hsluv<Wp, T>, T>; N]> for Alpha<Hsluv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsluv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsluv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hsv<S, T>, T>; N]> for Alpha<Hsv<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsv<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hsv<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Hwb<S, T>, T>; N]> for Alpha<Hwb<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hwb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Hwb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lab<Wp, T>, T>; N]> for Alpha<Lab<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lab<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lab<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lch<Wp, T>, T>; N]> for Alpha<Lch<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lch<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lch<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Lchuv<Wp, T>, T>; N]> for Alpha<Lchuv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lchuv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Lchuv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Luma<S, T>, T>; N]> for Alpha<Luma<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luma<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luma<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Luv<Wp, T>, T>; N]> for Alpha<Luv<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Luv<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsl<T>, T>; N]> for Alpha<Okhsl<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsl<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsl<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhsv<T>, T>; N]> for Alpha<Okhsv<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsv<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhsv<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Okhwb<T>, T>; N]> for Alpha<Okhwb<V>, V>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Okhwb<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Oklab<T>, T>; N]> for Alpha<Oklab<V>, V>where [T; N]: Default, V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklab<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Alpha<Oklch<T>, T>; N]> for Alpha<Oklch<V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklch<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Oklch<T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Alpha<Rgb<S, T>, T>; N]> for Alpha<Rgb<S, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Rgb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Rgb<S, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Xyz<Wp, T>, T>; N]> for Alpha<Xyz<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Xyz<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Xyz<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Alpha<Yxy<Wp, T>, T>; N]> for Alpha<Yxy<Wp, V>, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Yxy<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>

source§

fn from(components: (T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Alpha<Yxy<Wp, T>, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<[T; N]> for Alpha<C, T>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: [T; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A>

source§

fn from(components: (H, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A>

source§

fn from(components: (T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A>

source§

fn from(components: (T, T, H, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A>

source§

fn from(components: (T, T, T, A)) -> Self

Converts to this type from the input type.
source§

impl<C> From<Alpha<C, <C as Premultiply>::Scalar>> for PreAlpha<C>where C: Premultiply,

source§

fn from(color: Alpha<C, C::Scalar>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Alpha<C, T>> for [T; N]where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsl<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(color: Alpha<C, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsl<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsl<S, V>, V>> for [Alpha<Hsl<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsl<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsluv<Wp, T>, A>) -> (LuvHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsl<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsluv<Wp, T>, A>) -> (LuvHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Hsluv<Wp, V>, V>> for [Alpha<Hsluv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsluv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsv<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsluv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hsv<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hsv<S, V>, V>> for [Alpha<Hsv<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsv<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hwb<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hsv<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A)

source§

fn from(color: Alpha<Hwb<S, T>, A>) -> (RgbHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Hwb<S, V>, V>> for [Alpha<Hwb<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hwb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Lab<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Hwb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Lab<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lab<Wp, V>, V>> for [Alpha<Lab<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lab<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)

source§

fn from(color: Alpha<Lch<Wp, T>, A>) -> (T, T, LabHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lab<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A)

source§

fn from(color: Alpha<Lch<Wp, T>, A>) -> (T, T, LabHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lch<Wp, V>, V>> for [Alpha<Lch<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lch<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)

source§

fn from(color: Alpha<Lchuv<Wp, T>, A>) -> (T, T, LuvHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lch<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A)

source§

fn from(color: Alpha<Lchuv<Wp, T>, A>) -> (T, T, LuvHue<T>, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Lchuv<Wp, V>, V>> for [Alpha<Lchuv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lchuv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)

source§

fn from(color: Alpha<Luma<S, T>, A>) -> (T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Lchuv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A)

source§

fn from(color: Alpha<Luma<S, T>, A>) -> (T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Luma<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Lumaa<S, T>, P>,

source§

fn from(color: Lumaa<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Luma<S, V>, V>> for [Alpha<Luma<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luma<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Luma<S, u8>, u8>> for u16

source§

fn from(color: Lumaa<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Luv<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luma<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Luma<S, u8>, u8>> for u16

source§

fn from(color: Lumaa<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Luv<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Luv<Wp, V>, V>> for [Alpha<Luv<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Luv<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsl<V>, V>> for [Alpha<Okhsl<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsl<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)

source§

fn from(color: Alpha<Okhsv<T>, A>) -> (OklabHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsl<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A)

source§

fn from(color: Alpha<Okhsv<T>, A>) -> (OklabHue<T>, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhsv<V>, V>> for [Alpha<Okhsv<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsv<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhsv<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Okhwb<V>, V>> for [Alpha<Okhwb<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhwb<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Oklab<T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Okhwb<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Oklab<T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklab<V>, V>> for [Alpha<Oklab<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklab<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)

source§

fn from(color: Alpha<Oklch<T>, A>) -> (T, T, OklabHue<T>, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklab<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A)

source§

fn from(color: Alpha<Oklch<T>, A>) -> (T, T, OklabHue<T>, A)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Alpha<Oklch<V>, V>> for [Alpha<Oklch<T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklch<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Oklch<V>, V>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Linear<Srgb>, T>, T>> for Srgba<U>where U: FromStimulus<T>, - Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgba: LinSrgba<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Rgb<S, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where - O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where + Srgb: RgbStandard<Space = Srgb> + FromLinear<T, U>,

source§

fn from(lin_srgba: LinSrgba<T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Rgb<S, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<S, T, O, P> From<Alpha<Rgb<S, T>, T>> for Packed<O, P>where + O: ComponentOrder<Rgba<S, T>, P>,

source§

fn from(color: Rgba<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Alpha<Rgb<S, V>, V>> for [Alpha<Rgb<S, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Rgb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32

source§

fn from(color: Rgba<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Rgb<S, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<S> From<Alpha<Rgb<S, u8>, u8>> for u32

source§

fn from(color: Rgba<S, u8>) -> Self

Converts to this type from the input type.
source§

impl<T, U> From<Alpha<Rgb<Srgb, T>, T>> for LinSrgba<U>where U: FromStimulus<T>, - Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgba: Srgba<T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Xyz<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where + Srgb: RgbStandard<Space = Srgb> + IntoLinear<U, T>,

source§

fn from(srgba: Srgba<T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Xyz<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Xyz<Wp, V>, V>> for [Alpha<Xyz<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Xyz<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Yxy<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Xyz<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A)

source§

fn from(color: Alpha<Yxy<Wp, T>, A>) -> (T, T, T, A)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Alpha<Yxy<Wp, V>, V>> for [Alpha<Yxy<Wp, T>, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Yxy<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where - Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<C, T: Stimulus> From<C> for Alpha<C, T>

source§

fn from(color: C) -> Alpha<C, T>

Converts to this type from the input type.
source§

impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where - C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Alpha<Yxy<Wp, V>, V>) -> Self

Converts to this type from the input type.
source§

impl<C, T, const N: usize> From<Box<[T; N], Global>> for Box<Alpha<C, T>>where + Alpha<C, T>: ArrayCast<Array = [T; N]>,

source§

fn from(array: Box<[T; N]>) -> Self

Converts to this type from the input type.
source§

impl<C, T: Stimulus> From<C> for Alpha<C, T>

source§

fn from(color: C) -> Alpha<C, T>

Converts to this type from the input type.
source§

impl<C> From<PreAlpha<C>> for Alpha<C, C::Scalar>where + C: Premultiply,

source§

fn from(color: PreAlpha<C>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luma<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklab<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where - C1::Color: IntoColorUnclamped<C2>,

source§

fn from_color_unclamped(other: C1) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Rgb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<C1: WithAlpha<T>, C2, T> FromColorUnclamped<C1> for Alpha<C2, T>where + C1::Color: IntoColorUnclamped<C2>,

source§

fn from_color_unclamped(other: C1) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Tc, Ta, C, A> FromIterator<Alpha<Tc, Ta>> for Alpha<C, A>where C: Extend<Tc> + FromIterator<Tc>, A: Extend<Ta> + Default,

source§

fn from_iter<T: IntoIterator<Item = Alpha<Tc, Ta>>>(iter: T) -> Self

Creates a value from an iterator. Read more
source§

impl<C: GetHue, T> GetHue for Alpha<C, T>

§

type Hue = <C as GetHue>::Hue

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> C::Hue

Calculate a hue if possible. Read more
source§

impl<C, T> HasBoolMask for Alpha<C, T>where C: HasBoolMask, diff --git a/palette/struct.Hsl.html b/palette/struct.Hsl.html index d166e8bc0..b34628049 100644 --- a/palette/struct.Hsl.html +++ b/palette/struct.Hsl.html @@ -1,4 +1,4 @@ -Hsl in palette - Rust

Struct palette::Hsl

source ·
pub struct Hsl<S = Srgb, T = f32> {
+Hsl in palette - Rust

Struct palette::Hsl

source ·
pub struct Hsl<S = Srgb, T = f32> {
     pub hue: RgbHue<T>,
     pub saturation: T,
     pub lightness: T,
@@ -31,210 +31,210 @@
 a clear color, and 1.0 will give white.

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hsl<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This method can be used instead of Hsl::new +

Implementations§

source§

impl<T> Hsl<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This method can be used instead of Hsl::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This is the same as Hsl::new_srgb without +

source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an sRGB HSL color. This is the same as Hsl::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hsl<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an HSL color.

-
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an HSL color. This is the same as Hsl::new without the generic +

source§

impl<S, T> Hsl<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, lightness: T) -> Self

Create an HSL color.

+
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, lightness: T) -> Self

Create an HSL color. This is the same as Hsl::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hsl<S, U>where +

source

pub fn into_format<U>(self) -> Hsl<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hsl<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hsl<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, lightness) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, lightness) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, lightness): (H, T, T) ) -> Self

Convert from a (hue, saturation, lightness) tuple.

-

source§

impl<S, T> Hsl<S, T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_lightness() -> T

Return the lightness value minimum.

-
source

pub fn max_lightness() -> T

Return the lightness value maximum.

-
source§

impl<S, T> Hsl<S, &T>

source

pub fn copied(&self) -> Hsl<S, T>where +

source§

impl<S, T> Hsl<S, T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_lightness() -> T

Return the lightness value minimum.

+
source

pub fn max_lightness() -> T

Return the lightness value maximum.

+
source§

impl<S, T> Hsl<S, &T>

source

pub fn copied(&self) -> Hsl<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsl<S, T>where +

source

pub fn cloned(&self) -> Hsl<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, T> Hsl<S, &mut T>

source

pub fn set(&mut self, value: Hsl<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsl<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsl<S, T>where +

source§

impl<S, T> Hsl<S, &mut T>

source

pub fn set(&mut self, value: Hsl<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsl<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsl<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsl<S, T>where +

source

pub fn cloned(&self) -> Hsl<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hsl<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hsl<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsl<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsl<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hsl<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsl<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsl<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hsl<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsl<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsl<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsl<S, T>> for Hsl<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsl<S, T>> for Hsl<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where - T: Add<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsl<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsl<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsl<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsl<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsl<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsl<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsl<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsl<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsl<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsl<S, T>where - T: Clone,

source§

fn clone(&self) -> Hsl<S, T>

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<S: Debug, T: Debug> Debug for Hsl<S, T>

source§

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

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

impl<S, T> Default for Hsl<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsl<S, T>> for Hsl<S, T>where + T: Add<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsl<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsl<S, T>> for Hsl<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsl<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsl<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsl<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsl<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsl<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsl<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsl<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsl<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsl<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsl<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsl<S, T>where + T: Clone,

source§

fn clone(&self) -> Hsl<S, T>

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<S: Debug, T: Debug> Debug for Hsl<S, T>

source§

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

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

impl<S, T> Default for Hsl<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hsl<S, T>

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

impl<S, T, C> Extend<Hsl<S, T>> for Hsl<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsl<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hsl<S, T>

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

impl<S, T, C> Extend<Hsl<S, T>> for Hsl<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsl<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsl<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsl<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsl<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsl<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsl<S, T>; N]> for Hsl<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsl<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsl<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for [T; 3]

source§

fn from(color: Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsl<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsl<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsl<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsl<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for [T; 3]

source§

fn from(color: Hsl<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsl<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsl<S, V>> for [Hsl<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsl<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsl<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsl<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Zero + One + Abs + Round + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsl<S1, T>> for Hsl<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsl<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsl: Hsl<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsl: Hsl<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsl<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsl<S, T>where T: RealAngle + Zero + One + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsl<S, T>> for Hsl<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsl<S, T>> for Hsl<S, C>where Self: Extend<Hsl<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsl<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsl<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsl<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsl<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsl<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsl<S, C>where - C: IntoIterator,

§

type Item = Hsl<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsl<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsl<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsl<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsl<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsl<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsl<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsl<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsl<S, C>where + C: IntoIterator,

§

type Item = Hsl<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsl<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsl<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsl<S, T>> for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsl<S, T>> for Hsl<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hsl<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hsl<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -254,53 +254,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hsl<S, T>> for Hsl<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hsl<S, T>> for Hsl<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsl<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturateAssign for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturateAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsl<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where - T: Sub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsl<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsl<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsl<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsl<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsl<S, T>> for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsl<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsl<S, T>> for Hsl<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsl<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsl<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsl<S, T>> for Hsl<S, T>where + T: Sub<Output = T>,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsl<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsl<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsl<S, T>> for Hsl<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsl<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsl<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsl<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsl<S, T>> for Hsl<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where - _A: Stimulus,

§

type Color = Hsl<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsl<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where + _A: Stimulus,

§

type Color = Hsl<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsl<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsl<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hsl<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsl<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hsl<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hsl<S, T>where S: RefUnwindSafe, diff --git a/palette/struct.Hsluv.html b/palette/struct.Hsluv.html index 57484435f..a108dd75a 100644 --- a/palette/struct.Hsluv.html +++ b/palette/struct.Hsluv.html @@ -1,4 +1,4 @@ -Hsluv in palette - Rust

Struct palette::Hsluv

source ·
pub struct Hsluv<Wp = D65, T = f32> {
+Hsluv in palette - Rust

Struct palette::Hsluv

source ·
pub struct Hsluv<Wp = D65, T = f32> {
     pub hue: LuvHue<T>,
     pub saturation: T,
     pub l: T,
@@ -20,178 +20,178 @@
 a clear color, and 100.0 will give white.

§white_point: PhantomData<Wp>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<Wp, T> Hsluv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T) -> Self

Create an HSLuv color.

-
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T) -> Self

Create an HSLuv color. This is the same as Hsluv::new without the +

Implementations§

source§

impl<Wp, T> Hsluv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(hue: H, saturation: T, l: T) -> Self

Create an HSLuv color.

+
source

pub const fn new_const(hue: LuvHue<T>, saturation: T, l: T) -> Self

Create an HSLuv color. This is the same as Hsluv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (LuvHue<T>, T, T)

Convert to a (hue, saturation, l) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>( +

source

pub fn into_components(self) -> (LuvHue<T>, T, T)

Convert to a (hue, saturation, l) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>( (hue, saturation, l): (H, T, T) ) -> Self

Convert from a (hue, saturation, l) tuple.

-
source§

impl<Wp, T> Hsluv<Wp, T>where - T: Zero + Real,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source§

impl<Wp, T> Hsluv<Wp, &T>

source

pub fn copied(&self) -> Hsluv<Wp, T>where +

source§

impl<Wp, T> Hsluv<Wp, T>where + T: Zero + Real,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source§

impl<Wp, T> Hsluv<Wp, &T>

source

pub fn copied(&self) -> Hsluv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsluv<Wp, T>where +

source

pub fn cloned(&self) -> Hsluv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Hsluv<Wp, &mut T>

source

pub fn set(&mut self, value: Hsluv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsluv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsluv<Wp, T>where +

source§

impl<Wp, T> Hsluv<Wp, &mut T>

source

pub fn set(&mut self, value: Hsluv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsluv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsluv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsluv<Wp, T>where +

source

pub fn cloned(&self) -> Hsluv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<Wp, C> Hsluv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Hsluv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsluv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsluv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Hsluv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsluv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsluv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Hsluv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsluv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsluv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: Add<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Hsluv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsluv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsluv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Hsluv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Hsluv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>

source§

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

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

impl<Wp, T> Default for Hsluv<Wp, T>where + LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: Add<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Hsluv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Hsluv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Hsluv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Hsluv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Hsluv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsluv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Hsluv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Hsluv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsluv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Hsluv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Hsluv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Hsluv<Wp, T>

source§

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

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

impl<Wp, T> Default for Hsluv<Wp, T>where T: Real + Zero, - LuvHue<T>: Default,

source§

fn default() -> Hsluv<Wp, T>

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

impl<Wp, T, C> Extend<Hsluv<Wp, T>> for Hsluv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsluv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where + LuvHue<T>: Default,

source§

fn default() -> Hsluv<Wp, T>

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

impl<Wp, T, C> Extend<Hsluv<Wp, T>> for Hsluv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsluv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Hsluv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Hsluv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Hsluv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Hsluv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Hsluv<Wp, T>; N]> for Hsluv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsluv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]

source§

fn from(color: Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)

source§

fn from(color: Hsluv<Wp, T>) -> (LuvHue<T>, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsluv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Hsluv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Hsluv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for [T; 3]

source§

fn from(color: Hsluv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T)

source§

fn from(color: Hsluv<Wp, T>) -> (LuvHue<T>, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Hsluv<Wp, V>> for [Hsluv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsluv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsluv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsluv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsluv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<S as LumaStandard>::WhitePoint, T> ) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

fn from_color_unclamped(hsluv: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Hsluv<Wp, T>

source§

fn from_color_unclamped(hsluv: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsluv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Hsluv<Wp, T>> for Hsluv<Wp, C>where + Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Hsluv<Wp, T>> for Hsluv<Wp, C>where Self: Extend<Hsluv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsluv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Hsluv<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Hsluv<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Hsluv<Wp, C>where - C: IntoIterator,

§

type Item = Hsluv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsluv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Hsluv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Hsluv<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Hsluv<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsluv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Hsluv<Wp, C>where + C: IntoIterator,

§

type Item = Hsluv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: PartialEq, - LuvHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LuvHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Hsluv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Hsluv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -211,53 +211,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Hsluv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Hsluv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Hsluv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Hsluv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Hsluv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Hsluv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsluv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Hsluv<Wp, T>> for Hsluv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Hsluv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Hsluv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Hsluv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Hsluv<Wp, T>> for Hsluv<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where - _A: Stimulus,

§

type Color = Hsluv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where + _A: Stimulus,

§

type Color = Hsluv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Hsluv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Hsluv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Hsluv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Hsluv<Wp, T>where T: Eq, LuvHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Hsluv<Wp, T>where T: RefUnwindSafe, diff --git a/palette/struct.Hsv.html b/palette/struct.Hsv.html index 2019437ab..949db415d 100644 --- a/palette/struct.Hsv.html +++ b/palette/struct.Hsv.html @@ -1,4 +1,4 @@ -Hsv in palette - Rust

Struct palette::Hsv

source ·
pub struct Hsv<S = Srgb, T = f32> {
+Hsv in palette - Rust

Struct palette::Hsv

source ·
pub struct Hsv<S = Srgb, T = f32> {
     pub hue: RgbHue<T>,
     pub saturation: T,
     pub value: T,
@@ -30,211 +30,211 @@
 goes towards 0.0.

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hsv<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an sRGB HSV color. This method can be used instead of Hsv::new +

Implementations§

source§

impl<T> Hsv<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an sRGB HSV color. This method can be used instead of Hsv::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an sRGB HSV color. This is the same as Hsv::new_srgb without +

source

pub const fn new_srgb_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an sRGB HSV color. This is the same as Hsv::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hsv<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an HSV color.

-
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an HSV color. This is the same as Hsv::new without the generic +

source§

impl<S, T> Hsv<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an HSV color.

+
source

pub const fn new_const(hue: RgbHue<T>, saturation: T, value: T) -> Self

Create an HSV color. This is the same as Hsv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hsv<S, U>where +

source

pub fn into_format<U>(self) -> Hsv<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hsv<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hsv<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, value) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, saturation, value) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, saturation, value): (H, T, T) ) -> Self

Convert from a (hue, saturation, value) tuple.

-
source§

impl<S, T> Hsv<S, T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_value() -> T

Return the value value minimum.

-
source

pub fn max_value() -> T

Return the value value maximum.

-
source§

impl<S, T> Hsv<S, &T>

source

pub fn copied(&self) -> Hsv<S, T>where +

source§

impl<S, T> Hsv<S, T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_value() -> T

Return the value value minimum.

+
source

pub fn max_value() -> T

Return the value value maximum.

+
source§

impl<S, T> Hsv<S, &T>

source

pub fn copied(&self) -> Hsv<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsv<S, T>where +

source

pub fn cloned(&self) -> Hsv<S, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<S, T> Hsv<S, &mut T>

source

pub fn set(&mut self, value: Hsv<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hsv<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hsv<S, T>where +

source§

impl<S, T> Hsv<S, &mut T>

source

pub fn set(&mut self, value: Hsv<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hsv<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hsv<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hsv<S, T>where +

source

pub fn cloned(&self) -> Hsv<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hsv<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hsv<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hsv<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hsv<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hsv<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hsv<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hsv<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hsv<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hsv<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hsv<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsv<S, T>> for Hsv<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hsv<S, T>> for Hsv<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where - T: Add<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsv<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsv<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsv<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsv<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsv<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsv<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsv<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsv<S, T>where - T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsv<S, T>where - T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsv<S, T>where - T: Clone,

source§

fn clone(&self) -> Hsv<S, T>

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<S: Debug, T: Debug> Debug for Hsv<S, T>

source§

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

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

impl<S, T> Default for Hsv<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hsv<S, T>> for Hsv<S, T>where + T: Add<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hsv<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hsv<S, T>> for Hsv<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hsv<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hsv<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hsv<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hsv<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hsv<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hsv<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hsv<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hsv<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hsv<S, T>where + T: Clamp + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hsv<S, T>where + T: ClampAssign + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hsv<S, T>where + T: Clone,

source§

fn clone(&self) -> Hsv<S, T>

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<S: Debug, T: Debug> Debug for Hsv<S, T>

source§

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

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

impl<S, T> Default for Hsv<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hsv<S, T>

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

impl<S, T, C> Extend<Hsv<S, T>> for Hsv<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsv<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hsv<S, T>

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

impl<S, T, C> Extend<Hsv<S, T>> for Hsv<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hsv<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hsv<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hsv<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hsv<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hsv<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hsv<S, T>; N]> for Hsv<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsv<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsv<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for [T; 3]

source§

fn from(color: Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsv<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hsv<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hsv<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hsv<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for [T; 3]

source§

fn from(color: Hsv<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hsv<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hsv<S, V>> for [Hsv<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsv<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hsv<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hsv<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hsv<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hsl: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hsl<S, T>where T: Real + Zero + One + IsValidDivisor + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where + T::Mask: LazySelect<T> + Not<Output = T::Mask>,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Rgb<S, T>where T: Real + RealAngle + UnsignedAngle + Round + Zero + One + Abs + PartialCmp + Arithmetics + Clone, - T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where + T::Mask: LazySelect<T> + BitOps + Clone,

source§

fn from_color_unclamped(hsv: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hsv<S1, T>> for Hsv<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Rgb<S1, T>: FromColorUnclamped<Hsv<S1, T>>, Rgb<S2, T>: FromColorUnclamped<Rgb<S1, T>>, - Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsv: Hsv<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Rgb<S2, T>>,

source§

fn from_color_unclamped(hsv: Hsv<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hsv<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hsv<S, T>where T: RealAngle + One + Zero + MinMax + Arithmetics + PartialCmp + Clone, - T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where + T::Mask: BoolMask + BitOps + LazySelect<T> + Clone + 'static,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsv<S, T>> for Hsv<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hsv<S, T>> for Hsv<S, C>where Self: Extend<Hsv<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsv<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsv<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsv<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsv<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsv<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsv<S, C>where - C: IntoIterator,

§

type Item = Hsv<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsv<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hsv<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hsv<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hsv<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hsv<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hsv<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hsv<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hsv<S, C>where + C: IntoIterator,

§

type Item = Hsv<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hsv<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsv<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsv<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hsv<S, T>> for Hsv<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hsv<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hsv<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -254,53 +254,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hsv<S, T>> for Hsv<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hsv<S, T>> for Hsv<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsv<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> Saturate for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturateAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturateAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsv<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where - T: Sub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsv<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsv<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsv<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsv<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsv<S, T>> for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<S, T> SaturatingAdd<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hsv<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hsv<S, T>> for Hsv<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hsv<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hsv<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hsv<S, T>> for Hsv<S, T>where + T: Sub<Output = T>,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hsv<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hsv<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hsv<S, T>> for Hsv<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hsv<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hsv<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hsv<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hsv<S, T>> for Hsv<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where - _A: Stimulus,

§

type Color = Hsv<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsv<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where + _A: Stimulus,

§

type Color = Hsv<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hsv<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsv<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hsv<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hsv<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hsv<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hsv<S, T>where S: RefUnwindSafe, diff --git a/palette/struct.Hwb.html b/palette/struct.Hwb.html index a68333799..2520dbdd2 100644 --- a/palette/struct.Hwb.html +++ b/palette/struct.Hwb.html @@ -1,4 +1,4 @@ -Hwb in palette - Rust

Struct palette::Hwb

source ·
pub struct Hwb<S = Srgb, T = f32> {
+Hwb in palette - Rust

Struct palette::Hwb

source ·
pub struct Hwb<S = Srgb, T = f32> {
     pub hue: RgbHue<T>,
     pub whiteness: T,
     pub blackness: T,
@@ -33,209 +33,209 @@
 chosen with the other two

§standard: PhantomData<S>

The white point and RGB primaries this color is adapted to. The default is the sRGB standard.

-

Implementations§

source§

impl<T> Hwb<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This method can be used instead of Hwb::new +

Implementations§

source§

impl<T> Hwb<Srgb, T>

source

pub fn new_srgb<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This method can be used instead of Hwb::new to help type inference.

-
source

pub const fn new_srgb_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This is the same as Hwb::new_srgb without the +

source

pub const fn new_srgb_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an sRGB HWB color. This is the same as Hwb::new_srgb without the generic hue type. It’s temporary until const fn supports traits.

-
source§

impl<S, T> Hwb<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an HWB color.

-
source

pub const fn new_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an HWB color. This is the same as Hwb::new without the generic +

source§

impl<S, T> Hwb<S, T>

source

pub fn new<H: Into<RgbHue<T>>>(hue: H, whiteness: T, blackness: T) -> Self

Create an HWB color.

+
source

pub const fn new_const(hue: RgbHue<T>, whiteness: T, blackness: T) -> Self

Create an HWB color. This is the same as Hwb::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Hwb<S, U>where +

source

pub fn into_format<U>(self) -> Hwb<S, U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn from_format<U>(color: Hwb<S, U>) -> Selfwhere +

source

pub fn from_format<U>(color: Hwb<S, U>) -> Selfwhere T: FromStimulus<U> + FromAngle<U>,

Convert from another component type.

-
source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, whiteness, blackness) tuple.

-
source

pub fn from_components<H: Into<RgbHue<T>>>( +

source

pub fn into_components(self) -> (RgbHue<T>, T, T)

Convert to a (hue, whiteness, blackness) tuple.

+
source

pub fn from_components<H: Into<RgbHue<T>>>( (hue, whiteness, blackness): (H, T, T) ) -> Self

Convert from a (hue, whiteness, blackness) tuple.

-
source§

impl<S, T> Hwb<S, T>where - T: Stimulus,

source

pub fn min_whiteness() -> T

Return the whiteness value minimum.

-
source

pub fn max_whiteness() -> T

Return the whiteness value maximum.

-
source

pub fn min_blackness() -> T

Return the blackness value minimum.

-
source

pub fn max_blackness() -> T

Return the blackness value maximum.

-
source§

impl<S, T> Hwb<S, &T>

source

pub fn copied(&self) -> Hwb<S, T>where +

source§

impl<S, T> Hwb<S, T>where + T: Stimulus,

source

pub fn min_whiteness() -> T

Return the whiteness value minimum.

+
source

pub fn max_whiteness() -> T

Return the whiteness value maximum.

+
source

pub fn min_blackness() -> T

Return the blackness value minimum.

+
source

pub fn max_blackness() -> T

Return the blackness value maximum.

+
source§

impl<S, T> Hwb<S, &T>

source

pub fn copied(&self) -> Hwb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hwb<S, T>where +

source

pub fn cloned(&self) -> Hwb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-

source§

impl<S, T> Hwb<S, &mut T>

source

pub fn set(&mut self, value: Hwb<S, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Hwb<S, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Hwb<S, T>where +

source§

impl<S, T> Hwb<S, &mut T>

source

pub fn set(&mut self, value: Hwb<S, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Hwb<S, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Hwb<S, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Hwb<S, T>where +

source

pub fn cloned(&self) -> Hwb<S, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<S, C> Hwb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<S, C> Hwb<S, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Hwb<S, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Hwb<S, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<S, T> Hwb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Hwb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Hwb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where +

source§

impl<S, T> Hwb<S, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Hwb<S, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Hwb<S, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, S> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hwb<S, T>> for Hwb<S, T>where +

Trait Implementations§

source§

impl<S, T> AbsDiffEq<Hwb<S, T>> for Hwb<S, T>where T: AbsDiffEq, T::Epsilon: Clone, - RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where - T: Add<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hwb<S, T>where - T: Add<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hwb<S, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hwb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hwb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hwb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hwb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hwb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hwb<S, T>where + RgbHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<S, T> Add<Hwb<S, T>> for Hwb<S, T>where + T: Add<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> Add<T> for Hwb<S, T>where + T: Add<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<S, T> AddAssign<Hwb<S, T>> for Hwb<S, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<S, T> AddAssign<T> for Hwb<S, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<S, T> ArrayCast for Hwb<S, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<S, T> AsMut<[T]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<[T; 3]> for Hwb<S, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsMut<Hwb<S, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Hwb<S, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<[T; 3]> for Hwb<S, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> AsRef<Hwb<S, T>> for [T; 3]

source§

fn as_ref(&self) -> &Hwb<S, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<S, T> Clamp for Hwb<S, T>where T: One + Clamp + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, - T::Mask: Select<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hwb<S, T>where + T::Mask: Select<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<S, T> ClampAssign for Hwb<S, T>where T: One + ClampAssign + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, - T::Mask: Select<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hwb<S, T>where - T: Clone,

source§

fn clone(&self) -> Hwb<S, T>

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<S: Debug, T: Debug> Debug for Hwb<S, T>

source§

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

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

impl<S, T> Default for Hwb<S, T>where + T::Mask: Select<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<S, T> Clone for Hwb<S, T>where + T: Clone,

source§

fn clone(&self) -> Hwb<S, T>

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<S: Debug, T: Debug> Debug for Hwb<S, T>

source§

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

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

impl<S, T> Default for Hwb<S, T>where T: Stimulus, - RgbHue<T>: Default,

source§

fn default() -> Hwb<S, T>

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

impl<S, T, C> Extend<Hwb<S, T>> for Hwb<S, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hwb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where + RgbHue<T>: Default,

source§

fn default() -> Hwb<S, T>

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

impl<S, T, C> Extend<Hwb<S, T>> for Hwb<S, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Hwb<S, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, S, T> From<&'a [T; 3]> for &'a Hwb<S, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a Hwb<S, T>> for &'a [T; 3]

source§

fn from(color: &'a Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut [T; 3]> for &'a mut Hwb<S, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, S, T> From<&'a mut Hwb<S, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<[Hwb<S, T>; N]> for Hwb<S, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hwb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hwb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for [T; 3]

source§

fn from(color: Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hwb<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Hwb<S, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<[T; 3]> for Hwb<S, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Box<[T; 3], Global>> for Box<Hwb<S, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for [T; 3]

source§

fn from(color: Hwb<S, T>) -> Self

Converts to this type from the input type.
source§

impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T)

source§

fn from(color: Hwb<S, T>) -> (RgbHue<T>, T, T)

Converts to this type from the input type.
source§

impl<S, T, V, const N: usize> From<Hwb<S, V>> for [Hwb<S, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hwb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Hwb<S, V>) -> Self

Converts to this type from the input type.
source§

impl<S, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Hwb<S, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsl<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hsl<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Hsluv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hsv<S, T>> for Hwb<S, T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(color: Hsv<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsl<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Hsv<S, T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where - Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Hwb<S, T>> for Rgb<S, T>where + Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S1, S2, T> FromColorUnclamped<Hwb<S1, T>> for Hwb<S2, T>where S1: RgbStandard + 'static, S2: RgbStandard + 'static, S1::Space: RgbSpace<WhitePoint = <S2::Space as RgbSpace>::WhitePoint>, Hsv<S1, T>: FromColorUnclamped<Hwb<S1, T>>, Hsv<S2, T>: FromColorUnclamped<Hsv<S1, T>>, - Self: FromColorUnclamped<Hsv<S2, T>>,

source§

fn from_color_unclamped(hwb: Hwb<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where + Self: FromColorUnclamped<Hsv<S2, T>>,

source§

fn from_color_unclamped(hwb: Hwb<S1, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Hsluv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luma<S, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = <S as LumaStandard>::WhitePoint>, S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, _S> FromColorUnclamped<Luma<_S, T>> for Hwb<S, T>where _S: LumaStandard<WhitePoint = <<S as RgbStandard>::Space as RgbSpace>::WhitePoint>, S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Rgb<S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hwb<S, T>> for Hwb<S, C>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T, C> FromIterator<Hwb<S, T>> for Hwb<S, C>where Self: Extend<Hwb<S, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hwb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hwb<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hwb<S, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hwb<S, C>where - &'a C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hwb<S, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hwb<S, C>where - C: IntoIterator,

§

type Item = Hwb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hwb<S, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Hwb<S, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<S, T> GetHue for Hwb<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> RgbHue<T>

Calculate a hue if possible. Read more
source§

impl<S, T> HasBoolMask for Hwb<S, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, S, C> IntoIterator for &'a Hwb<S, C>where + &'a C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, S, C> IntoIterator for &'a mut Hwb<S, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Hwb<S, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, C> IntoIterator for Hwb<S, C>where + C: IntoIterator,

§

type Item = Hwb<S, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, S>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<S, T> IsWithinBounds for Hwb<S, T>where T: PartialCmp + Add<Output = T> + Clone + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hwb<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<S, T> Lighten for Hwb<S, T>where T: Real + Zero + MinMax + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> LightenAssign for Hwb<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + SubAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hwb<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hwb<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hwb<S, T>> for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<S, T> Mix for Hwb<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<S, T> MixAssign for Hwb<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<S, T> PartialEq<Hwb<S, T>> for Hwb<S, T>where T: PartialEq, - RgbHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + RgbHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<S, T> RelativeContrast for Hwb<S, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<S, T> RelativeContrast for Hwb<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -255,45 +255,45 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<S, T> RelativeEq<Hwb<S, T>> for Hwb<S, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<S, T> RelativeEq<Hwb<S, T>> for Hwb<S, T>where T: RelativeEq, T::Epsilon: Clone, - RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + RgbHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where - T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where - H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hwb<S, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where - T: Sub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hwb<S, T>where - T: Sub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hwb<S, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hwb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hwb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hwb<S, T>> for Hwb<S, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<S, T> SaturatingAdd<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingAdd<T> for Hwb<S, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<Hwb<S, T>> for Hwb<S, T>where + T: SaturatingSub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T> SaturatingSub<T> for Hwb<S, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where + H: Into<RgbHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<S, T> ShiftHue for Hwb<S, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<S, T> Sub<Hwb<S, T>> for Hwb<S, T>where + T: Sub<Output = T>,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> Sub<T> for Hwb<S, T>where + T: Sub<Output = T> + Clone,

§

type Output = Hwb<S, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<S, T> SubAssign<Hwb<S, T>> for Hwb<S, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<S, T> SubAssign<T> for Hwb<S, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, S, T> TryFrom<&'a [T]> for &'a Hwb<S, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, S, T> TryFrom<&'a mut [T]> for &'a mut Hwb<S, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<S, T> UlpsEq<Hwb<S, T>> for Hwb<S, T>where T: UlpsEq, T::Epsilon: Clone, - RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where - _A: Stimulus,

§

type Color = Hwb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hwb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + RgbHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where + _A: Stimulus,

§

type Color = Hwb<S, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Hwb<S, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where - H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hwb<S, T>where - T: Copy,

source§

impl<S, T> Eq for Hwb<S, T>where +already has a transparency, it is overwritten. Read more
source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where + H: Into<RgbHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<S, T> Copy for Hwb<S, T>where + T: Copy,

source§

impl<S, T> Eq for Hwb<S, T>where T: Eq, RgbHue<T>: Eq,

Auto Trait Implementations§

§

impl<S, T> RefUnwindSafe for Hwb<S, T>where S: RefUnwindSafe, diff --git a/palette/struct.Lab.html b/palette/struct.Lab.html index 4f74e95e1..0789f7893 100644 --- a/palette/struct.Lab.html +++ b/palette/struct.Lab.html @@ -1,4 +1,4 @@ -Lab in palette - Rust

Struct palette::Lab

source ·
pub struct Lab<Wp = D65, T = f32> {
+Lab in palette - Rust

Struct palette::Lab

source ·
pub struct Lab<Wp = D65, T = f32> {
     pub l: T,
     pub a: T,
     pub b: T,
@@ -24,199 +24,199 @@
 
§b: T

b* goes from yellow at -128 to blue at 127.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lab<Wp, T>

source

pub const fn new(l: T, a: T, b: T) -> Lab<Wp, T>

Create a CIE L*a*b* color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, a\*, b\*) tuple.

-
source

pub fn from_components((l, a, b): (T, T, T)) -> Self

Convert from a (L\*, a\*, b\*) tuple.

-
source§

impl<Wp, T> Lab<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_a() -> T

Return the a value minimum.

-
source

pub fn max_a() -> T

Return the a value maximum.

-
source

pub fn min_b() -> T

Return the b value minimum.

-
source

pub fn max_b() -> T

Return the b value maximum.

-
source§

impl<Wp, T> Lab<Wp, &T>

source

pub fn copied(&self) -> Lab<Wp, T>where +

Implementations§

source§

impl<Wp, T> Lab<Wp, T>

source

pub const fn new(l: T, a: T, b: T) -> Lab<Wp, T>

Create a CIE L*a*b* color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, a\*, b\*) tuple.

+
source

pub fn from_components((l, a, b): (T, T, T)) -> Self

Convert from a (L\*, a\*, b\*) tuple.

+
source§

impl<Wp, T> Lab<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_a() -> T

Return the a value minimum.

+
source

pub fn max_a() -> T

Return the a value maximum.

+
source

pub fn min_b() -> T

Return the b value minimum.

+
source

pub fn max_b() -> T

Return the b value maximum.

+
source§

impl<Wp, T> Lab<Wp, &T>

source

pub fn copied(&self) -> Lab<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lab<Wp, T>where +

source

pub fn cloned(&self) -> Lab<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lab<Wp, &mut T>

source

pub fn set(&mut self, value: Lab<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lab<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lab<Wp, T>where +

source§

impl<Wp, T> Lab<Wp, &mut T>

source

pub fn set(&mut self, value: Lab<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lab<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lab<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lab<Wp, T>where +

source

pub fn cloned(&self) -> Lab<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lab<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lab<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lab<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lab<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Lab<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lab<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lab<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lab<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lab<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lab<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lab<Wp, T>> for Lab<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where - T: Add<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lab<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lab<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lab<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lab<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lab<Wp, T>> for Lab<Wp, T>where + T: Add<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lab<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lab<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lab<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lab<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lab<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lab<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lab<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lab<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lab<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Hypot + Clone, - T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lab<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lab<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lab<Wp, T>

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<Wp, T> ColorDifference for Lab<Wp, T>where + T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lab<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lab<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lab<Wp, T>

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<Wp, T> ColorDifference for Lab<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, - Self: Into<LabColorDiff<T>>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lab<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>

source§

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

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

impl<Wp, T> Default for Lab<Wp, T>where - T: Zero,

source§

fn default() -> Lab<Wp, T>

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

impl<Wp, T> DeltaE for Lab<Wp, T>where + Self: Into<LabColorDiff<T>>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lab<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lab<Wp, T>

source§

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

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

impl<Wp, T> Default for Lab<Wp, T>where + T: Zero,

source§

fn default() -> Lab<Wp, T>

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

impl<Wp, T> DeltaE for Lab<Wp, T>where Self: EuclideanDistance<Scalar = T>, - T: Sqrt,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, -according to the color space’s specification.
source§

impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where - T: Div<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Lab<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Lab<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Lab<Wp, T>> for Lab<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lab<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where + T: Sqrt,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, +according to the color space’s specification.
source§

impl<Wp, T> Div<Lab<Wp, T>> for Lab<Wp, T>where + T: Div<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Lab<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Lab<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Lab<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Lab<Wp, T>> for Lab<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lab<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lab<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lab<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lab<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lab<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lab<Wp, T>; N]> for Lab<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lab<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lab<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for [T; 3]

source§

fn from(color: Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)

source§

fn from(color: Lab<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lab<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lab<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Lab<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lab<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for [T; 3]

source§

fn from(color: Lab<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lab<Wp, T>> for (T, T, T)

source§

fn from(color: Lab<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lab<Wp, V>> for [Lab<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lab<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lab<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Lab<Wp, T>>> for Lab<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lab<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lab<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lab<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lab<Wp, T>

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, - Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where T: Real + Recip + Powi + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lab<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lab<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, T: Real + Powi + Cbrt + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lab<Wp, T>> for Lab<Wp, C>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lab<Wp, T>> for Lab<Wp, C>where Self: Extend<Lab<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lab<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lab<Wp, T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Lab<Wp, T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lab<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lab<Wp, T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lab<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Lab<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<Wp, T> ImprovedDeltaE for Lab<Wp, T>where Self: DeltaE<Scalar = T>, - T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self + T: Real + Mul<T, Output = T> + Powf + Sqrt,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self and other, according to the color space’s specification and later -improvements by Huang et al.
source§

impl<'a, Wp, C> IntoIterator for &'a Lab<Wp, C>where - &'a C: IntoIterator,

§

type Item = Lab<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lab<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Lab<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lab<Wp, C>where - C: IntoIterator,

§

type Item = Lab<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where +improvements by Huang et al.

source§

impl<'a, Wp, C> IntoIterator for &'a Lab<Wp, C>where + &'a C: IntoIterator,

§

type Item = Lab<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lab<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Lab<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lab<Wp, C>where + C: IntoIterator,

§

type Item = Lab<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lab<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lab<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lab<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lab<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where - T: Mul<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Lab<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Lab<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lab<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lab<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Lab<Wp, T>> for Lab<Wp, T>where + T: Mul<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Lab<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Lab<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Lab<Wp, T>> for Lab<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Lab<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Lab<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -236,39 +236,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lab<Wp, T>> for Lab<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lab<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lab<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lab<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lab<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lab<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lab<Wp, T>> for Lab<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lab<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Lab<Wp, T>> for Lab<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lab<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lab<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lab<Wp, T>> for Lab<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lab<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lab<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lab<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lab<Wp, T>> for Lab<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where - _A: Stimulus,

§

type Color = Lab<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where + _A: Stimulus,

§

type Color = Lab<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Lab<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lab<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Lab<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lab<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lab<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Lab<Wp, T>where diff --git a/palette/struct.Lch.html b/palette/struct.Lch.html index f221b9cd8..d1267bfc6 100644 --- a/palette/struct.Lch.html +++ b/palette/struct.Lch.html @@ -1,4 +1,4 @@ -Lch in palette - Rust

Struct palette::Lch

source ·
pub struct Lch<Wp = D65, T = f32> {
+Lch in palette - Rust

Struct palette::Lch

source ·
pub struct Lch<Wp = D65, T = f32> {
     pub l: T,
     pub chroma: T,
     pub hue: LabHue<T>,
@@ -18,192 +18,192 @@
 etc.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lch<Wp, T>

source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*h° color.

-
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self

Create a CIE L*C*h° color. This is the same as Lch::new without the +

Implementations§

source§

impl<Wp, T> Lch<Wp, T>

source

pub fn new<H: Into<LabHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*h° color.

+
source

pub const fn new_const(l: T, chroma: T, hue: LabHue<T>) -> Self

Create a CIE L*C*h° color. This is the same as Lch::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LabHue<T>)

Convert to a (L\*, C\*, h°) tuple.

-
source

pub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*, h°) tuple.

-
source§

impl<Wp, T> Lch<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_chroma() -> T

Return the chroma value minimum.

-
source

pub fn max_chroma() -> T

Return the chroma value maximum. This value does not cover the entire +

source

pub fn into_components(self) -> (T, T, LabHue<T>)

Convert to a (L\*, C\*, h°) tuple.

+
source

pub fn from_components<H: Into<LabHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*, h°) tuple.

+
source§

impl<Wp, T> Lch<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_chroma() -> T

Return the chroma value minimum.

+
source

pub fn max_chroma() -> T

Return the chroma value maximum. This value does not cover the entire color space, but covers enough to be practical for downsampling to smaller color spaces like sRGB.

-
source

pub fn max_extended_chroma() -> T

Return the chroma extended maximum value. This value covers the entire +

source

pub fn max_extended_chroma() -> T

Return the chroma extended maximum value. This value covers the entire color space and is included for completeness, but the additional range should be unnecessary for most use cases.

-
source§

impl<Wp, T> Lch<Wp, &T>

source

pub fn copied(&self) -> Lch<Wp, T>where +

source§

impl<Wp, T> Lch<Wp, &T>

source

pub fn copied(&self) -> Lch<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lch<Wp, T>where +

source

pub fn cloned(&self) -> Lch<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lch<Wp, &mut T>

source

pub fn set(&mut self, value: Lch<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lch<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lch<Wp, T>where +

source§

impl<Wp, T> Lch<Wp, &mut T>

source

pub fn set(&mut self, value: Lch<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lch<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lch<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lch<Wp, T>where +

source

pub fn cloned(&self) -> Lch<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lch<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lch<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lch<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lch<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Lch<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lch<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lch<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lch<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lch<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lch<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lch<Wp, T>> for Lch<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where - T: Add<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lch<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lch<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lch<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lch<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where + LabHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lch<Wp, T>> for Lch<Wp, T>where + T: Add<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lch<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lch<Wp, T>> for Lch<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lch<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lch<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lch<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lch<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lch<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lch<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lch<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lch<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Ciede2000 for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Powi + Exp + Trigonometry + Abs + Sqrt + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, - Self: IntoColorUnclamped<Lab<Wp, T>>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lch<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lch<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lch<Wp, T>

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<Wp, T> ColorDifference for Lch<Wp, T>where + Self: IntoColorUnclamped<Lab<Wp, T>>,

§

type Scalar = T

The type for the ΔE* (Delta E).
source§

fn difference(self, other: Self) -> Self::Scalar

Calculate the CIEDE2000 ΔE* (Delta E) color difference between self and other.
source§

impl<Wp, T> Clamp for Lch<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lch<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lch<Wp, T>

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<Wp, T> ColorDifference for Lch<Wp, T>where T: Real + RealAngle + One + Zero + Trigonometry + Abs + Sqrt + Powi + Exp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T> + BitAnd<Output = T::Mask> + BitOr<Output = T::Mask>, Self: Into<LabColorDiff<T>>,

CIEDE2000 distance metric for color difference.

-
§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>

source§

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

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

impl<Wp, T> Default for Lch<Wp, T>where +

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
The type of the calculated color difference.
source§

fn get_color_difference(self, other: Lch<Wp, T>) -> Self::Scalar

👎Deprecated since 0.7.2: replaced by palette::color_difference::Ciede2000
Return the difference or distance between two colors.
source§

impl<Wp: Debug, T: Debug> Debug for Lch<Wp, T>

source§

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

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

impl<Wp, T> Default for Lch<Wp, T>where T: Zero + Real, - LabHue<T>: Default,

source§

fn default() -> Lch<Wp, T>

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

impl<Wp, T> DeltaE for Lch<Wp, T>where - Lab<Wp, T>: FromColorUnclamped<Self> + DeltaE<Scalar = T>,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, -according to the color space’s specification.
source§

impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where + LabHue<T>: Default,

source§

fn default() -> Lch<Wp, T>

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

impl<Wp, T> DeltaE for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Self> + DeltaE<Scalar = T>,

§

type Scalar = T

The type for the distance value.
source§

fn delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE color difference metric for self and other, +according to the color space’s specification.
source§

impl<Wp, T, C> Extend<Lch<Wp, T>> for Lch<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lch<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lch<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lch<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lch<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lch<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lch<Wp, T>; N]> for Lch<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lch<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lch<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for [T; 3]

source§

fn from(color: Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)

source§

fn from(color: Lch<Wp, T>) -> (T, T, LabHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lch<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lch<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lch<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for [T; 3]

source§

fn from(color: Lch<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>)

source§

fn from(color: Lch<Wp, T>) -> (T, T, LabHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lch<Wp, V>> for [Lch<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lch<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lch<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lch<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lch<Wp, T>where T: Zero + Hypot, - Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Lab<Wp, T>: GetHue<Hue = LabHue<T>>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lch<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lch<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lab<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lch<Wp, T>

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lch<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lch<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where + Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lch<Wp, T>> for Lch<Wp, C>where Self: Extend<Lch<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lch<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lch<Wp, T>where - T: Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where - Lab<Wp, T>: FromColorUnclamped<Self> + ImprovedDeltaE<Scalar = T>,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lch<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lch<Wp, T>where + T: Clone,

§

type Hue = LabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LabHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lch<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> ImprovedDeltaE for Lch<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Self> + ImprovedDeltaE<Scalar = T>,

source§

fn improved_delta_e(self, other: Self) -> Self::Scalar

Calculate the ΔE’ (improved ΔE) color difference metric for self and other, according to the color space’s specification and later -improvements by Huang et al.
source§

impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lch<Wp, C>where - C: IntoIterator,

§

type Item = Lch<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where +improvements by Huang et al.

source§

impl<'a, Wp, C> IntoIterator for &'a Lch<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lch<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Lch<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lch<Wp, C>where + C: IntoIterator,

§

type Item = Lch<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lch<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lch<Wp, T>> for Lch<Wp, T>where T: PartialEq, - LabHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LabHue<T>: PartialEq,
source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Lch<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Lch<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -223,53 +223,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lch<Wp, T>> for Lch<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LabHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lch<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lch<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lch<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lch<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lch<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lch<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lch<Wp, T>> for Lch<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lch<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lch<Wp, T>> for Lch<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lch<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lch<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lch<Wp, T>> for Lch<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lch<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lch<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lch<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lch<Wp, T>> for Lch<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where - _A: Stimulus,

§

type Color = Lch<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LabHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where + _A: Stimulus,

§

type Color = Lch<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lch<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lch<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lch<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lch<Wp, T>where T: Eq, LabHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lch<Wp, T>where T: RefUnwindSafe, diff --git a/palette/struct.Lchuv.html b/palette/struct.Lchuv.html index e8fa109e3..e4c290ddd 100644 --- a/palette/struct.Lchuv.html +++ b/palette/struct.Lchuv.html @@ -1,4 +1,4 @@ -Lchuv in palette - Rust

Struct palette::Lchuv

source ·
pub struct Lchuv<Wp = D65, T = f32> {
+Lchuv in palette - Rust

Struct palette::Lchuv

source ·
pub struct Lchuv<Wp = D65, T = f32> {
     pub l: T,
     pub chroma: T,
     pub hue: LuvHue<T>,
@@ -19,176 +19,176 @@
 etc.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Lchuv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*uv h°uv color.

-
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>) -> Self

Create a CIE L*C*uv h°uv color. This is the same as Lchuv::new +

Implementations§

source§

impl<Wp, T> Lchuv<Wp, T>

source

pub fn new<H: Into<LuvHue<T>>>(l: T, chroma: T, hue: H) -> Self

Create a CIE L*C*uv h°uv color.

+
source

pub const fn new_const(l: T, chroma: T, hue: LuvHue<T>) -> Self

Create a CIE L*C*uv h°uv color. This is the same as Lchuv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_components(self) -> (T, T, LuvHue<T>)

Convert to a (L\*, C\*uv, h°uv) tuple.

-
source

pub fn from_components<H: Into<LuvHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*uv, h°uv) tuple.

-
source§

impl<Wp, T> Lchuv<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_chroma() -> T

Return the chroma value minimum.

-
source

pub fn max_chroma() -> T

Return the chroma value maximum.

-
source§

impl<Wp, T> Lchuv<Wp, &T>

source

pub fn copied(&self) -> Lchuv<Wp, T>where +

source

pub fn into_components(self) -> (T, T, LuvHue<T>)

Convert to a (L\*, C\*uv, h°uv) tuple.

+
source

pub fn from_components<H: Into<LuvHue<T>>>((l, chroma, hue): (T, T, H)) -> Self

Convert from a (L\*, C\*uv, h°uv) tuple.

+
source§

impl<Wp, T> Lchuv<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_chroma() -> T

Return the chroma value minimum.

+
source

pub fn max_chroma() -> T

Return the chroma value maximum.

+
source§

impl<Wp, T> Lchuv<Wp, &T>

source

pub fn copied(&self) -> Lchuv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lchuv<Wp, T>where +

source

pub fn cloned(&self) -> Lchuv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Lchuv<Wp, &mut T>

source

pub fn set(&mut self, value: Lchuv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Lchuv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Lchuv<Wp, T>where +

source§

impl<Wp, T> Lchuv<Wp, &mut T>

source

pub fn set(&mut self, value: Lchuv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Lchuv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Lchuv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Lchuv<Wp, T>where +

source

pub fn cloned(&self) -> Lchuv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Lchuv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Lchuv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Lchuv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Lchuv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Lchuv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Lchuv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Lchuv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Lchuv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Lchuv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Lchuv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: AbsDiffEq, T::Epsilon: Clone, - LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: Add<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lchuv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lchuv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lchuv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lchuv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Lchuv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>

source§

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

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

impl<Wp, T> Default for Lchuv<Wp, T>where + LuvHue<T>: AbsDiffEq<Epsilon = T::Epsilon>,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: Add<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Lchuv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Lchuv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Lchuv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Lchuv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Lchuv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Lchuv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Lchuv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Lchuv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Lchuv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Lchuv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Lchuv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Lchuv<Wp, T>

source§

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

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

impl<Wp, T> Default for Lchuv<Wp, T>where T: Zero + Real, - LuvHue<T>: Default,

source§

fn default() -> Lchuv<Wp, T>

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

impl<Wp, T, C> Extend<Lchuv<Wp, T>> for Lchuv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lchuv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where + LuvHue<T>: Default,

source§

fn default() -> Lchuv<Wp, T>

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

impl<Wp, T, C> Extend<Lchuv<Wp, T>> for Lchuv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Lchuv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Lchuv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Lchuv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Lchuv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Lchuv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Lchuv<Wp, T>; N]> for Lchuv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lchuv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]

source§

fn from(color: Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)

source§

fn from(color: Lchuv<Wp, T>) -> (T, T, LuvHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Lchuv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Lchuv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Lchuv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for [T; 3]

source§

fn from(color: Lchuv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>)

source§

fn from(color: Lchuv<Wp, T>) -> (T, T, LuvHue<T>)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Lchuv<Wp, V>> for [Lchuv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lchuv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Lchuv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Lchuv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Lchuv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Luv<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Lchuv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Lchuv<<S as LumaStandard>::WhitePoint, T> ) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where - T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Hsluv<Wp, T>where + T: Real + RealAngle + Into<f64> + Powi + Arithmetics + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Lchuv<Wp, T>

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Lchuv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where T: Zero + Hypot, - Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Lchuv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lchuv<Wp, T>> for Lchuv<Wp, C>where + Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Lchuv<Wp, T>> for Lchuv<Wp, C>where Self: Extend<Lchuv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lchuv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Lchuv<Wp, C>where - &'a C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lchuv<Wp, C>where - &'a mut C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lchuv<Wp, C>where - C: IntoIterator,

§

type Item = Lchuv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Lchuv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Lchuv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Lchuv<Wp, C>where + &'a C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Lchuv<Wp, C>where + &'a mut C: IntoIterator + 'a,

§

type Item = Lchuv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Lchuv<Wp, C>where + C: IntoIterator,

§

type Item = Lchuv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> PartialEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: PartialEq, - LuvHue<T>: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + LuvHue<T>: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> RelativeContrast for Lchuv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> RelativeContrast for Lchuv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -208,53 +208,53 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: RelativeEq, T::Epsilon: Clone, - LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + LuvHue<T>: RelativeEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate(self, factor: T) -> Self

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed(self, amount: T) -> Self

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to -1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where - T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lchuv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lchuv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lchuv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the saturation modifier.
source§

fn saturate_assign(&mut self, factor: T)

Scale the color towards the maximum saturation by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn saturate_fixed_assign(&mut self, amount: T)

Increase the saturation by amount, a value ranging from 0.0 to +1.0. Read more
source§

impl<Wp, T> SaturatingAdd<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Lchuv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Lchuv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn set_hue(&mut self, hue: H)

Change the hue to a specific value.
source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.
source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where + T: AddAssign,

§

type Scalar = T

The type of the hue modifier.
source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Shifts the hue by amount.
source§

impl<Wp, T> Sub<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Lchuv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Lchuv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Lchuv<Wp, T>> for Lchuv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Lchuv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Lchuv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Lchuv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Lchuv<Wp, T>> for Lchuv<Wp, T>where T: UlpsEq, T::Epsilon: Clone, - LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where - _A: Stimulus,

§

type Color = Lchuv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + LuvHue<T>: UlpsEq + AbsDiffEq<Epsilon = T::Epsilon>,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where + _A: Stimulus,

§

type Color = Lchuv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where - H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lchuv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Lchuv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where + H: Into<LuvHue<T>>,

source§

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.
source§

impl<Wp, T> Copy for Lchuv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Lchuv<Wp, T>where T: Eq, LuvHue<T>: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Lchuv<Wp, T>where T: RefUnwindSafe, diff --git a/palette/struct.Luv.html b/palette/struct.Luv.html index 7949ce447..a02829bce 100644 --- a/palette/struct.Luv.html +++ b/palette/struct.Luv.html @@ -1,4 +1,4 @@ -Luv in palette - Rust

Struct palette::Luv

source ·
pub struct Luv<Wp = D65, T = f32> {
+Luv in palette - Rust

Struct palette::Luv

source ·
pub struct Luv<Wp = D65, T = f32> {
     pub l: T,
     pub u: T,
     pub v: T,
@@ -21,186 +21,186 @@
 108.0).

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Luv<Wp, T>

source

pub const fn new(l: T, u: T, v: T) -> Self

Create a CIE L*u*v* color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, u\*, v\*) tuple.

-
source

pub fn from_components((l, u, v): (T, T, T)) -> Self

Convert from a (L\*, u\*, v\*) tuple.

-
source§

impl<Wp, T> Luv<Wp, T>where - T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

-
source

pub fn max_l() -> T

Return the l value maximum.

-
source

pub fn min_u() -> T

Return the u value minimum.

-
source

pub fn max_u() -> T

Return the u value maximum.

-
source

pub fn min_v() -> T

Return the v value minimum.

-
source

pub fn max_v() -> T

Return the v value maximum.

-
source§

impl<Wp, T> Luv<Wp, &T>

source

pub fn copied(&self) -> Luv<Wp, T>where +

Implementations§

source§

impl<Wp, T> Luv<Wp, T>

source

pub const fn new(l: T, u: T, v: T) -> Self

Create a CIE L*u*v* color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (L\*, u\*, v\*) tuple.

+
source

pub fn from_components((l, u, v): (T, T, T)) -> Self

Convert from a (L\*, u\*, v\*) tuple.

+
source§

impl<Wp, T> Luv<Wp, T>where + T: Zero + Real,

source

pub fn min_l() -> T

Return the l value minimum.

+
source

pub fn max_l() -> T

Return the l value maximum.

+
source

pub fn min_u() -> T

Return the u value minimum.

+
source

pub fn max_u() -> T

Return the u value maximum.

+
source

pub fn min_v() -> T

Return the v value minimum.

+
source

pub fn max_v() -> T

Return the v value maximum.

+
source§

impl<Wp, T> Luv<Wp, &T>

source

pub fn copied(&self) -> Luv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luv<Wp, T>where +

source

pub fn cloned(&self) -> Luv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Luv<Wp, &mut T>

source

pub fn set(&mut self, value: Luv<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Luv<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Luv<Wp, T>where +

source§

impl<Wp, T> Luv<Wp, &mut T>

source

pub fn set(&mut self, value: Luv<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Luv<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Luv<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Luv<Wp, T>where +

source

pub fn cloned(&self) -> Luv<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Luv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Luv<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Luv<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Luv<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Luv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Luv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Luv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Luv<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Luv<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Luv<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Luv<Wp, T>> for Luv<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Luv<Wp, T>> for Luv<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where - T: Add<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Luv<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Luv<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Luv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Luv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Luv<Wp, T>where - T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Luv<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Luv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Luv<Wp, T>

source§

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

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

impl<Wp, T> Default for Luv<Wp, T>where - T: Zero,

source§

fn default() -> Luv<Wp, T>

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

impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where - T: Div<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Luv<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Luv<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Luv<Wp, T>> for Luv<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<Luv<Wp, T>> for Luv<Wp, T>where + T: Add<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<T> for Luv<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<T> for Luv<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Luv<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Luv<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Luv<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Luv<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Luv<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Luv<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Luv<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Luv<Wp, T>where + T: Clamp + Real + Zero,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Luv<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Luv<Wp, T>

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<Wp: Debug, T: Debug> Debug for Luv<Wp, T>

source§

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

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

impl<Wp, T> Default for Luv<Wp, T>where + T: Zero,

source§

fn default() -> Luv<Wp, T>

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

impl<Wp, T> Div<Luv<Wp, T>> for Luv<Wp, T>where + T: Div<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<T> for Luv<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<T> for Luv<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Luv<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Luv<Wp, T>> for Luv<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Luv<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Luv<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Luv<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Luv<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Luv<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Luv<Wp, T>; N]> for Luv<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Luv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for [T; 3]

source§

fn from(color: Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)

source§

fn from(color: Luv<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Luv<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Luv<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Luv<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Luv<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for [T; 3]

source§

fn from(color: Luv<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Luv<Wp, T>> for (T, T, T)

source§

fn from(color: Luv<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Luv<Wp, V>> for [Luv<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Luv<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Luv<Wp, T>>> for Luv<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Luv<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Luv<Wp, T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Luma<_S, T>> for Luv<Wp, T>where _S: LumaStandard<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Xyz<Wp, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Luv<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Luv<<S as LumaStandard>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<<S as LumaStandard>::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Lchuv<Wp, T>where T: Zero + Hypot, - Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where + Luv<Wp, T>: GetHue<Hue = LuvHue<T>>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Luv<Wp, T>

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where T: Real + Zero + Recip + Powi + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Luv<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where + T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Luv<Wp, T>> for Luv<Wp, C>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Luv<Wp, T>> for Luv<Wp, C>where Self: Extend<Luv<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Luv<Wp, T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Luv<Wp, T>where - T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a Luv<Wp, C>where - &'a C: IntoIterator,

§

type Item = Luv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Luv<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Luv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Luv<Wp, C>where - C: IntoIterator,

§

type Item = Luv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Luv<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> GetHue for Luv<Wp, T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LuvHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> LuvHue<T>

Calculate a hue if possible. Read more
source§

impl<Wp, T> HasBoolMask for Luv<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<Wp, T> HyAb for Luv<Wp, T>where + T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a Luv<Wp, C>where + &'a C: IntoIterator,

§

type Item = Luv<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Luv<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Luv<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Luv<Wp, C>where + C: IntoIterator,

§

type Item = Luv<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Luv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Luv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Luv<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Luv<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where - T: Mul<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Luv<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Luv<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Luv<Wp, T>> for Luv<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Luv<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Luv<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<Luv<Wp, T>> for Luv<Wp, T>where + T: Mul<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<T> for Luv<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<T> for Luv<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Luv<Wp, T>> for Luv<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Luv<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Luv<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -220,39 +220,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Luv<Wp, T>> for Luv<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Luv<Wp, T>> for Luv<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where - T: Sub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Luv<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Luv<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Luv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Luv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Luv<Wp, T>> for Luv<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<T> for Luv<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Luv<Wp, T>> for Luv<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Luv<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<Luv<Wp, T>> for Luv<Wp, T>where + T: Sub<Output = T>,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<T> for Luv<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Luv<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<Luv<Wp, T>> for Luv<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<T> for Luv<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Luv<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Luv<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Luv<Wp, T>> for Luv<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where - _A: Stimulus,

§

type Color = Luv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where + _A: Stimulus,

§

type Color = Luv<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Luv<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Luv<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Luv<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Luv<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Luv<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Luv<Wp, T>where diff --git a/palette/struct.Okhsl.html b/palette/struct.Okhsl.html index d486089b0..5a3457d68 100644 --- a/palette/struct.Okhsl.html +++ b/palette/struct.Okhsl.html @@ -105,21 +105,21 @@ V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhsl<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsl<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsl<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsl<T>> for [T; 3]

source§

fn from(color: Okhsl<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsl<V>> for [Okhsl<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsl<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsl<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, @@ -128,49 +128,49 @@ Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsl<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsl<T>where Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where T: RealAngle + One + Zero + Arithmetics + Sqrt + MinMax + PartialOrd + HasBoolMask<Mask = bool> + Powi + Cbrt + Trigonometry + Clone, Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where +

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsl<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where T: Real + One + Zero + Arithmetics + Powi + Sqrt + Hypot + MinMax + Cbrt + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd + Clone, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsl<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsl<T>> for Okhsl<C>where Self: Extend<Okhsl<T>>, diff --git a/palette/struct.Okhsv.html b/palette/struct.Okhsv.html index 6ee9086d1..fabe2db3d 100644 --- a/palette/struct.Okhsv.html +++ b/palette/struct.Okhsv.html @@ -32,52 +32,52 @@

Okhsl’s lightness component goes from black to white. Okhsv’s value component goes from black to non-black – a maximally bright color..

-

Implementations§

source§

impl<T> Okhsv<T>where - T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

-
source

pub fn max_saturation() -> T

Return the saturation value maximum.

-
source

pub fn min_value() -> T

Return the value value minimum.

-
source

pub fn max_value() -> T

Return the value value maximum.

-
source§

impl<T> Okhsv<&T>

source

pub fn copied(&self) -> Okhsv<T>where +

Implementations§

source§

impl<T> Okhsv<T>where + T: Stimulus,

source

pub fn min_saturation() -> T

Return the saturation value minimum.

+
source

pub fn max_saturation() -> T

Return the saturation value maximum.

+
source

pub fn min_value() -> T

Return the value value minimum.

+
source

pub fn max_value() -> T

Return the value value maximum.

+
source§

impl<T> Okhsv<&T>

source

pub fn copied(&self) -> Okhsv<T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Okhsv<T>where +

source

pub fn cloned(&self) -> Okhsv<T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<T> Okhsv<&mut T>

source

pub fn set(&mut self, value: Okhsv<T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Okhsv<&T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Okhsv<T>where +

source§

impl<T> Okhsv<&mut T>

source

pub fn set(&mut self, value: Okhsv<T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Okhsv<&T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Okhsv<T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Okhsv<T>where +

source

pub fn cloned(&self) -> Okhsv<T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<C> Okhsv<C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<C> Okhsv<C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Okhsv<&<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Okhsv<&mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<T> Okhsv<Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Okhsv<T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Okhsv<T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>> where +

source§

impl<T> Okhsv<Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Okhsv<T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Okhsv<T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-
source§

impl<T> Okhsv<T>

source

pub fn new<H: Into<OklabHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an Okhsv color.

-
source

pub const fn new_const(hue: OklabHue<T>, saturation: T, value: T) -> Self

Create an Okhsv color. This is the same as Okhsv::new without the +

source§

impl<T> Okhsv<T>

source

pub fn new<H: Into<OklabHue<T>>>(hue: H, saturation: T, value: T) -> Self

Create an Okhsv color.

+
source

pub const fn new_const(hue: OklabHue<T>, saturation: T, value: T) -> Self

Create an Okhsv color. This is the same as Okhsv::new without the generic hue type. It’s temporary until const fn supports traits.

-
source

pub fn into_format<U>(self) -> Okhsv<U>where +

source

pub fn into_format<U>(self) -> Okhsv<U>where U: FromStimulus<T> + FromAngle<T>,

Convert into another component type.

-
source

pub fn into_components(self) -> (OklabHue<T>, T, T)

Convert to a (h, s, v) tuple.

-
source

pub fn from_components<H: Into<OklabHue<T>>>( +

source

pub fn into_components(self) -> (OklabHue<T>, T, T)

Convert to a (h, s, v) tuple.

+
source

pub fn from_components<H: Into<OklabHue<T>>>( (hue, saturation, value): (H, T, T) ) -> Self

Convert from a (h, s, v) tuple.

Trait Implementations§

source§

impl<T> AbsDiffEq<Okhsv<T>> for Okhsv<T>where @@ -91,89 +91,88 @@ T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Okhsv<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Okhsv<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Okhsv<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Okhsv<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Okhsv<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Okhsv<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Okhsv<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Okhsv<T>> for [T; 3]

source§

fn as_ref(&self) -> &Okhsv<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Okhsv<T>where T: Clamp + Real + Arithmetics + Stimulus,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Okhsv<T>where - T: ClampAssign + Real + Arithmetics + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Okhsv<T>

source§

fn clone(&self) -> Okhsv<T>

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<T: Debug> Debug for Okhsv<T>

source§

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

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

impl<T> Default for Okhsv<T>where + T: ClampAssign + Real + Arithmetics + Stimulus,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Okhsv<T>

source§

fn clone(&self) -> Okhsv<T>

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<T: Debug> Debug for Okhsv<T>

source§

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

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

impl<T> Default for Okhsv<T>where T: Stimulus, - OklabHue<T>: Default,

source§

fn default() -> Okhsv<T>

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

impl<T, C> Extend<Okhsv<T>> for Okhsv<C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Okhsv<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where + OklabHue<T>: Default,

source§

fn default() -> Okhsv<T>

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

impl<T, C> Extend<Okhsv<T>> for Okhsv<C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Okhsv<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Okhsv<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Okhsv<T>> for &'a [T; 3]

source§

fn from(color: &'a Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Okhsv<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Okhsv<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Okhsv<T>; N]> for Okhsv<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhsv<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsv<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>where - T: Zero + MinMax,

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for [T; 3]

source§

fn from(color: Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)

source§

fn from(color: Okhsv<T>) -> (OklabHue<T>, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhsv<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhsv<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>

source§

fn from(components: (H, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhsv<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for [T; 3]

source§

fn from(color: Okhsv<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T)

source§

fn from(color: Okhsv<T>) -> (OklabHue<T>, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhsv<V>> for [Okhsv<T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsv<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhsv<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhsv<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhsv<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

+ Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where T: RealAngle + PartialOrd + HasBoolMask<Mask = bool> + MinMax + Powi + Arithmetics + Clone + One + Zero + Cbrt + Trigonometry, - Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where + Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhsv<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where T: Real + MinMax + Clone + Powi + Sqrt + Cbrt + Arithmetics + Trigonometry + Zero + Hypot + One + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

Converts lab to Okhsv in the bounds of sRGB.

See

See srgb_to_okhsv. This implementation differs from srgb_to_okhsv in that it starts with the lab value and produces hues in degrees, whereas srgb_to_okhsv produces degree/360.

-
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsv<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhsv<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsv<T>> for Okhsv<C>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhsv<T>> for Okhsv<C>where Self: Extend<Okhsv<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Okhsv<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Okhsv<T>where - T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhsv<T>where + T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhsv<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, C> IntoIterator for &'a Okhsv<C>where &'a C: IntoIterator + 'a,

§

type Item = Okhsv<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Okhsv<C>where &'a mut C: IntoIterator + 'a,

§

type Item = Okhsv<<&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<C> IntoIterator for Okhsv<C>where diff --git a/palette/struct.Okhwb.html b/palette/struct.Okhwb.html index e628706b1..02a4aefc9 100644 --- a/palette/struct.Okhwb.html +++ b/palette/struct.Okhwb.html @@ -86,11 +86,11 @@ V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Okhwb<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Okhwb<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Okhwb<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Okhwb<T>> for [T; 3]

source§

fn from(color: Okhwb<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Okhwb<V>> for [Okhwb<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Okhwb<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Okhwb<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Okhwb<T>where _S: RgbStandard, @@ -102,53 +102,53 @@ D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Okhwb<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where - T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

-
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where + Okhsv<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Okhwb<T>where + T: One + Arithmetics,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Converts lab to Okhwb in the bounds of sRGB.

+
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Okhsv<T>where T: One + Zero + IsValidDivisor + Arithmetics, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where - Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(hwb: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Okhwb<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Okhwb<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhwb<T>> for Okhwb<C>where + Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Okhwb<T>> for Okhwb<C>where Self: Extend<Okhwb<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Okhwb<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Okhwb<T>where T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Okhwb<T>where diff --git a/palette/struct.Oklab.html b/palette/struct.Oklab.html index 3a5b09591..d5988782a 100644 --- a/palette/struct.Oklab.html +++ b/palette/struct.Oklab.html @@ -141,8 +141,8 @@

Lightening / Dar T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Oklab<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Oklab<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Oklab<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Oklab<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Oklab<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Oklab<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Oklab<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Oklab<T>> for [T; 3]

source§

fn as_ref(&self) -> &Oklab<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Oklab<T>where T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Oklab<T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklab<T>

source§

fn clone(&self) -> Oklab<T>

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<T: Debug> Debug for Oklab<T>

source§

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

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

impl<T> Default for Oklab<T>where - T: Zero,

source§

fn default() -> Self

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

impl<T> Div<Oklab<T>> for Oklab<T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklab<T>

source§

fn clone(&self) -> Oklab<T>

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<T: Debug> Debug for Oklab<T>

source§

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

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

impl<T> Default for Oklab<T>where + T: Zero,

source§

fn default() -> Self

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

impl<T> Div<Oklab<T>> for Oklab<T>where T: Div<Output = T>,

§

type Output = Oklab<T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<T> Div<T> for Oklab<T>where T: Div<Output = T> + Clone,

§

type Output = Oklab<T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<T> DivAssign<Oklab<T>> for Oklab<T>where T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<T> DivAssign<T> for Oklab<T>where @@ -150,93 +150,93 @@

Lightening / Dar T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<T, C> Extend<Oklab<T>> for Oklab<C>where C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklab<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklab<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklab<T>> for &'a [T]

source§

fn from(color: &'a Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklab<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklab<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklab<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklab<T>; N]> for Oklab<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklab<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklab<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<(T, T, T)> for Oklab<T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for [T; 3]

source§

fn from(color: Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for (T, T, T)

source§

fn from(color: Oklab<T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklab<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklab<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T> From<(T, T, T)> for Oklab<T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklab<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for [T; 3]

source§

fn from(color: Oklab<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklab<T>> for (T, T, T)

source§

fn from(color: Oklab<T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklab<V>> for [Oklab<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Oklab<V>) -> Self

Converts to this type from the input type.
source§

impl<T> From<PreAlpha<Oklab<T>>> for Oklab<T>where Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklab<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, Xyz<D65, T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklab<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklab<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklab<T>where T: RealAngle + One + Zero + Arithmetics + Sqrt + MinMax + PartialOrd + HasBoolMask<Mask = bool> + Powi + Cbrt + Trigonometry + Clone, Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where +
source§

fn from_color_unclamped(hsl: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklab<T>where T: RealAngle + PartialOrd + HasBoolMask<Mask = bool> + MinMax + Powi + Arithmetics + Clone + One + Zero + Cbrt + Trigonometry, - Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where - Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where + Oklab<T>: IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(hsv: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsl<T>where T: Real + One + Zero + Arithmetics + Powi + Sqrt + Hypot + MinMax + Cbrt + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd + Clone, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhsv<T>where T: Real + MinMax + Clone + Powi + Sqrt + Cbrt + Arithmetics + Trigonometry + Zero + Hypot + One + IsValidDivisor<Mask = bool> + HasBoolMask<Mask = bool> + PartialOrd, Oklab<T>: GetHue<Hue = OklabHue<T>> + IntoColorUnclamped<LinSrgb<T>>,

Converts lab to Okhsv in the bounds of sRGB.

See

See srgb_to_okhsv. This implementation differs from srgb_to_okhsv in that it starts with the lab value and produces hues in degrees, whereas srgb_to_okhsv produces degree/360.

-
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklab<T>

source§

fn from_color_unclamped(color: Self) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where +
source§

fn from_color_unclamped(lab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more

source§

impl<T> FromColorUnclamped<Oklab<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklab<T>

source§

fn from_color_unclamped(color: Self) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where T: Hypot + Clone, - Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where + Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklab<T>> for Rgb<S, T>where T: Real + Arithmetics + Copy, S: RgbStandard, S::TransferFn: FromLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, Rgb<Linear<Srgb>, T>: IntoColorUnclamped<Self>, - Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where - T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where + Xyz<D65, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(oklab: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where + T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Rgb<S, T>> for Oklab<T>where T: Real + Cbrt + Arithmetics + Copy, S: RgbStandard, S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = D65> + 'static, - Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where - T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where + Xyz<D65, T>: FromColorUnclamped<Rgb<S, T>>,

source§

fn from_color_unclamped(rgb: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where + T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklab<T>> for Oklab<C>where + Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklab<T>> for Oklab<C>where Self: Extend<Oklab<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Oklab<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Oklab<T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklab<T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklab<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<T> HyAb for Oklab<T>where T: Real + Abs + Sqrt + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn hybrid_distance(self, other: Self) -> Self::Scalar

Calculate the hybrid distance between self and other. Read more
source§

impl<'a, C> IntoIterator for &'a Oklab<C>where &'a C: IntoIterator,

§

type Item = Oklab<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Oklab<C>where diff --git a/palette/struct.Oklch.html b/palette/struct.Oklch.html index 6aea82e70..139b9febb 100644 --- a/palette/struct.Oklch.html +++ b/palette/struct.Oklch.html @@ -72,79 +72,79 @@ T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<T> ArrayCast for Oklch<T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<T> AsMut<[T]> for Oklch<T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<[T; 3]> for Oklch<T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsMut<Oklch<T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Oklch<T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T]> for Oklch<T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<[T; 3]> for Oklch<T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> AsRef<Oklch<T>> for [T; 3]

source§

fn as_ref(&self) -> &Oklch<T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<T> Clamp for Oklch<T>where T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to the nearest valid values. Read more
source§

impl<T> ClampAssign for Oklch<T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklch<T>

source§

fn clone(&self) -> Oklch<T>

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<T: Debug> Debug for Oklch<T>

source§

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

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

impl<T> Default for Oklch<T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<T: Clone> Clone for Oklch<T>

source§

fn clone(&self) -> Oklch<T>

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<T: Debug> Debug for Oklch<T>

source§

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

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

impl<T> Default for Oklch<T>where T: Zero + One, - OklabHue<T>: Default,

source§

fn default() -> Oklch<T>

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

impl<T, C> Extend<Oklch<T>> for Oklch<C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklch<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where + OklabHue<T>: Default,

source§

fn default() -> Oklch<T>

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

impl<T, C> Extend<Oklch<T>> for Oklch<C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Oklch<T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, T> From<&'a [T; 3]> for &'a Oklch<T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a Oklch<T>> for &'a [T; 3]

source§

fn from(color: &'a Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut [T; 3]> for &'a mut Oklch<T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<'a, T> From<&'a mut Oklch<T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<[Oklch<T>; N]> for Oklch<V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklch<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklch<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for [T; 3]

source§

fn from(color: Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)

source§

fn from(color: Oklch<T>) -> (T, T, OklabHue<T>)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Oklch<T>; N]) -> Self

Converts to this type from the input type.
source§

impl<T> From<[T; 3]> for Oklch<T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T>

source§

fn from(components: (T, T, H)) -> Self

Converts to this type from the input type.
source§

impl<T> From<Box<[T; 3], Global>> for Box<Oklch<T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for [T; 3]

source§

fn from(color: Oklch<T>) -> Self

Converts to this type from the input type.
source§

impl<T> From<Oklch<T>> for (T, T, OklabHue<T>)

source§

fn from(color: Oklch<T>) -> (T, T, OklabHue<T>)

Converts to this type from the input type.
source§

impl<T, V, const N: usize> From<Oklch<V>> for [Oklch<T>; N]where Self: Default, V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Oklch<V>) -> Self

Converts to this type from the input type.
source§

impl<T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Oklch<T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsl<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Hsluv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsluv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hsv<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Hwb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lab<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lab<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lch<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lch<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Lchuv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Lchuv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Luma<_S, T>> for Oklch<T>where _S: LumaStandard<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Luma<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luma<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Luv<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Luv<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsl<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhsv<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Okhwb<T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Oklch<T>where T: Hypot + Clone, - Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where + Oklab<T>: GetHue<Hue = OklabHue<T>>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsl<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where - Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where - Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hsv<S, T>where + Rgb<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Hwb<S, T>where + Hsv<S, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where + Luv<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Luma<S, T>where S: LumaStandard, - Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where + Xyz<<S as LumaStandard>::WhitePoint, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where - Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where - T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklch<T>

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsl<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Okhwb<T>where + Okhsv<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklab<T>where + T: RealAngle + Zero + MinMax + Trigonometry + Mul<Output = T> + Clone,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklch<T>> for Oklch<T>

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Oklch<T>> for Rgb<S, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Oklch<T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, _S> FromColorUnclamped<Rgb<_S, T>> for Oklch<T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = D65>, D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklch<T>> for Oklch<C>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, C> FromIterator<Oklch<T>> for Oklch<C>where Self: Extend<Oklch<T>>, C: Default,

source§

fn from_iter<I: IntoIterator<Item = Oklch<T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<T> GetHue for Oklch<T>where - T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklch<T>where + T: Clone,

§

type Hue = OklabHue<T>

The kind of hue unit this color space uses. Read more
source§

fn get_hue(&self) -> OklabHue<T>

Calculate a hue if possible. Read more
source§

impl<T> HasBoolMask for Oklch<T>where T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, C> IntoIterator for &'a Oklch<C>where &'a C: IntoIterator + 'a,

§

type Item = Oklch<<&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, C> IntoIterator for &'a mut Oklch<C>where &'a mut C: IntoIterator + 'a,

§

type Item = Oklch<<&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<C> IntoIterator for Oklch<C>where diff --git a/palette/struct.Xyz.html b/palette/struct.Xyz.html index e87ac4670..d9687e4de 100644 --- a/palette/struct.Xyz.html +++ b/palette/struct.Xyz.html @@ -1,4 +1,4 @@ -Xyz in palette - Rust

Struct palette::Xyz

source ·
pub struct Xyz<Wp = D65, T = f32> {
+Xyz in palette - Rust

Struct palette::Xyz

source ·
pub struct Xyz<Wp = D65, T = f32> {
     pub x: T,
     pub y: T,
     pub z: T,
@@ -19,117 +19,117 @@
 default D65.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Xyz<Wp, T>

source

pub const fn new(x: T, y: T, z: T) -> Xyz<Wp, T>

Create a CIE XYZ color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (X, Y, Z) tuple.

-
source

pub fn from_components((x, y, z): (T, T, T)) -> Self

Convert from a (X, Y, Z) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Xyz<NewWp, T>

Changes the reference white point without changing the color value.

+

Implementations§

source§

impl<Wp, T> Xyz<Wp, T>

source

pub const fn new(x: T, y: T, z: T) -> Xyz<Wp, T>

Create a CIE XYZ color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (X, Y, Z) tuple.

+
source

pub fn from_components((x, y, z): (T, T, T)) -> Self

Convert from a (X, Y, Z) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Xyz<NewWp, T>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T> Xyz<Wp, T>where +

source§

impl<Wp, T> Xyz<Wp, T>where T: Zero, - Wp: WhitePoint<T>,

source

pub fn min_x() -> T

Return the x value minimum.

-
source

pub fn max_x() -> T

Return the x value maximum.

-
source

pub fn min_y() -> T

Return the y value minimum.

-
source

pub fn max_y() -> T

Return the y value maximum.

-
source

pub fn min_z() -> T

Return the z value minimum.

-
source

pub fn max_z() -> T

Return the z value maximum.

-
source§

impl<Wp, T> Xyz<Wp, &T>

source

pub fn copied(&self) -> Xyz<Wp, T>where + Wp: WhitePoint<T>,

source

pub fn min_x() -> T

Return the x value minimum.

+
source

pub fn max_x() -> T

Return the x value maximum.

+
source

pub fn min_y() -> T

Return the y value minimum.

+
source

pub fn max_y() -> T

Return the y value maximum.

+
source

pub fn min_z() -> T

Return the z value minimum.

+
source

pub fn max_z() -> T

Return the z value maximum.

+
source§

impl<Wp, T> Xyz<Wp, &T>

source

pub fn copied(&self) -> Xyz<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Xyz<Wp, T>where +

source

pub fn cloned(&self) -> Xyz<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Xyz<Wp, &mut T>

source

pub fn set(&mut self, value: Xyz<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Xyz<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Xyz<Wp, T>where +

source§

impl<Wp, T> Xyz<Wp, &mut T>

source

pub fn set(&mut self, value: Xyz<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Xyz<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Xyz<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Xyz<Wp, T>where +

source

pub fn cloned(&self) -> Xyz<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Xyz<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Xyz<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Xyz<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Xyz<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Xyz<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Xyz<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Xyz<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Xyz<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Xyz<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Xyz<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Xyz<Wp, T>> for Xyz<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Xyz<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Add<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Xyz<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Xyz<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Xyz<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Xyz<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Add<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Xyz<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Xyz<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Xyz<Wp, T>where T: Clamp + Zero, - Wp: WhitePoint<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where T: ClampAssign + Zero, - Wp: WhitePoint<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Xyz<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Xyz<Wp, T>

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<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>

source§

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

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

impl<Wp, T> Default for Xyz<Wp, T>where - T: Zero,

source§

fn default() -> Xyz<Wp, T>

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

impl<Wp, T> Div<T> for Xyz<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Div<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Xyz<Wp, T>> for Xyz<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Xyz<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where + Wp: WhitePoint<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Xyz<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Xyz<Wp, T>

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<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>

source§

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

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

impl<Wp, T> Default for Xyz<Wp, T>where + T: Zero,

source§

fn default() -> Xyz<Wp, T>

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

impl<Wp, T> Div<T> for Xyz<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Div<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Xyz<Wp, T>> for Xyz<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Xyz<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Xyz<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]

source§

fn from(color: Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)

source§

fn from(color: Xyz<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Xyz<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]

source§

fn from(color: Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)

source§

fn from(color: Xyz<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Xyz<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Xyz<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where T: Real + Recip + Powi + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where Self: Mul<T, Output = Self>, Wp: WhitePoint<T>, S: LumaStandard<WhitePoint = Wp>, - S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where + S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where T: Real + Zero + Recip + Powi + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where - T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where + T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + FromScalar<Scalar = T::Scalar> + Clone, Wp: WhitePoint<T::Scalar>, @@ -137,84 +137,84 @@ S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = Wp>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, S::TransferFn: FromLinear<T, T>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, <S::Space as RgbSpace>::WhitePoint: WhitePoint<T::Scalar>, T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + Clone + FromScalar<Scalar = T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( color: Xyz<<S::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where - T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where + T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, T: Real + Powi + Cbrt + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where + T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where T: Zero + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where T: Zero + One + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Xyz<Wp, T>> for Xyz<Wp, C>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Xyz<Wp, T>> for Xyz<Wp, C>where Self: Extend<Xyz<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Xyz<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Xyz<Wp, C>where - &'a C: IntoIterator,

§

type Item = Xyz<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Xyz<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Xyz<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Xyz<Wp, C>where - C: IntoIterator,

§

type Item = Xyz<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Xyz<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Xyz<Wp, C>where + &'a C: IntoIterator,

§

type Item = Xyz<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Xyz<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Xyz<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Xyz<Wp, C>where + C: IntoIterator,

§

type Item = Xyz<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where T: PartialCmp + Zero, T::Mask: BitAnd<Output = T::Mask>, - Wp: WhitePoint<T>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Xyz<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where + Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Xyz<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Xyz<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Mul<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Xyz<Wp, T>> for Xyz<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + Wp: WhitePoint<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Xyz<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Xyz<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Mul<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Xyz<Wp, T>> for Xyz<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Xyz<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Xyz<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where T: Real + Arithmetics + PartialCmp, - T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -234,40 +234,40 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Xyz<Wp, T>> for Xyz<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Xyz<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Sub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Xyz<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Xyz<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Xyz<Wp, T>> for Xyz<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Xyz<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Sub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Xyz<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Xyz<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where - _A: Stimulus,

§

type Color = Xyz<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where + _A: Stimulus,

§

type Color = Xyz<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Xyz<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Xyz<Wp, T>where - T: Eq,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Xyz<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Xyz<Wp, T>where + T: Eq,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where T: Stimulus,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Xyz<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Xyz<Wp, T>where diff --git a/palette/struct.Yxy.html b/palette/struct.Yxy.html index d6959a272..1ab02a8de 100644 --- a/palette/struct.Yxy.html +++ b/palette/struct.Yxy.html @@ -1,4 +1,4 @@ -Yxy in palette - Rust

Struct palette::Yxy

source ·
pub struct Yxy<Wp = D65, T = f32> {
+Yxy in palette - Rust

Struct palette::Yxy

source ·
pub struct Yxy<Wp = D65, T = f32> {
     pub x: T,
     pub y: T,
     pub luma: T,
@@ -17,192 +17,192 @@
 0 to 1, where 0 is black and 1 is white.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Yxy<Wp, T>

source

pub const fn new(x: T, y: T, luma: T) -> Yxy<Wp, T>

Create a CIE Yxy color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn from_components((x, y, luma): (T, T, T)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Yxy<NewWp, T>

Changes the reference white point without changing the color value.

+

Implementations§

source§

impl<Wp, T> Yxy<Wp, T>

source

pub const fn new(x: T, y: T, luma: T) -> Yxy<Wp, T>

Create a CIE Yxy color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn from_components((x, y, luma): (T, T, T)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Yxy<NewWp, T>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T> Yxy<Wp, T>where - T: Zero + One,

source

pub fn min_x() -> T

Return the x value minimum.

-
source

pub fn max_x() -> T

Return the x value maximum.

-
source

pub fn min_y() -> T

Return the y value minimum.

-
source

pub fn max_y() -> T

Return the y value maximum.

-
source

pub fn min_luma() -> T

Return the luma value minimum.

-
source

pub fn max_luma() -> T

Return the luma value maximum.

-
source§

impl<Wp, T> Yxy<Wp, &T>

source

pub fn copied(&self) -> Yxy<Wp, T>where +

source§

impl<Wp, T> Yxy<Wp, T>where + T: Zero + One,

source

pub fn min_x() -> T

Return the x value minimum.

+
source

pub fn max_x() -> T

Return the x value maximum.

+
source

pub fn min_y() -> T

Return the y value minimum.

+
source

pub fn max_y() -> T

Return the y value maximum.

+
source

pub fn min_luma() -> T

Return the luma value minimum.

+
source

pub fn max_luma() -> T

Return the luma value maximum.

+
source§

impl<Wp, T> Yxy<Wp, &T>

source

pub fn copied(&self) -> Yxy<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Yxy<Wp, T>where +

source

pub fn cloned(&self) -> Yxy<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Yxy<Wp, &mut T>

source

pub fn set(&mut self, value: Yxy<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Yxy<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Yxy<Wp, T>where +

source§

impl<Wp, T> Yxy<Wp, &mut T>

source

pub fn set(&mut self, value: Yxy<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Yxy<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Yxy<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Yxy<Wp, T>where +

source

pub fn cloned(&self) -> Yxy<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Yxy<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Yxy<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Yxy<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Yxy<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Yxy<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Yxy<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Yxy<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Yxy<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Yxy<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Yxy<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Yxy<Wp, T>> for Yxy<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Yxy<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Add<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Yxy<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Yxy<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Yxy<Wp, T>where - T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Yxy<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Yxy<Wp, T>

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<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>

source§

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

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

impl<Wp, T> Default for Yxy<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Yxy<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Add<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Yxy<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Yxy<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Yxy<Wp, T>where + T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Yxy<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Yxy<Wp, T>

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<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>

source§

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

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

impl<Wp, T> Default for Yxy<Wp, T>where T: Zero, Wp: WhitePoint<T>, - Xyz<Wp, T>: IntoColorUnclamped<Self>,

source§

fn default() -> Yxy<Wp, T>

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

impl<Wp, T> Div<T> for Yxy<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Div<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Yxy<Wp, T>> for Yxy<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Yxy<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where + Xyz<Wp, T>: IntoColorUnclamped<Self>,

source§

fn default() -> Yxy<Wp, T>

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

impl<Wp, T> Div<T> for Yxy<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Div<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Yxy<Wp, T>> for Yxy<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Yxy<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Yxy<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]

source§

fn from(color: Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)

source§

fn from(color: Yxy<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Yxy<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]

source§

fn from(color: Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)

source§

fn from(color: Yxy<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Yxy<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Yxy<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where S: LumaStandard, S::TransferFn: IntoLinear<T, T>, - Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where + Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where T: Zero + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where T: Zero + One + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Yxy<Wp, T>> for Yxy<Wp, C>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Yxy<Wp, T>> for Yxy<Wp, C>where Self: Extend<Yxy<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Yxy<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Yxy<Wp, C>where - &'a C: IntoIterator,

§

type Item = Yxy<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Yxy<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Yxy<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Yxy<Wp, C>where - C: IntoIterator,

§

type Item = Yxy<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Yxy<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Yxy<Wp, C>where + &'a C: IntoIterator,

§

type Item = Yxy<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Yxy<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Yxy<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Yxy<Wp, C>where + C: IntoIterator,

§

type Item = Yxy<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where T: PartialCmp + Zero + One, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Yxy<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Yxy<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Yxy<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Yxy<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Mul<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Yxy<Wp, T>> for Yxy<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Yxy<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Yxy<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Mul<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Yxy<Wp, T>> for Yxy<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Yxy<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Yxy<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where T: Real + Arithmetics + PartialCmp, - T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -222,39 +222,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Yxy<Wp, T>> for Yxy<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Yxy<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Sub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Yxy<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Yxy<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Yxy<Wp, T>> for Yxy<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Yxy<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Sub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Yxy<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Yxy<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where - _A: Stimulus,

§

type Color = Yxy<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where + _A: Stimulus,

§

type Color = Yxy<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Yxy<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Yxy<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Yxy<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Yxy<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Yxy<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Yxy<Wp, T>where diff --git a/palette/trait.Clamp.html b/palette/trait.Clamp.html index 49ebde830..50eb6b67d 100644 --- a/palette/trait.Clamp.html +++ b/palette/trait.Clamp.html @@ -21,11 +21,11 @@ assert_eq!(Srgb::new(1.3, 0.5, -3.0).clamp(), Srgb::new(1.0, 0.5, 0.0));

Implementors§

source§

impl<C, T> Clamp for Alpha<C, T>where C: Clamp, - T: Stimulus + Clamp,

source§

impl<S, T> Clamp for Luma<S, T>where - T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Rgb<S, T>where - T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hsl<S, T>where - T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hsv<S, T>where - T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hwb<S, T>where + T: Stimulus + Clamp,

source§

impl<S, T> Clamp for Luma<S, T>where + T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Rgb<S, T>where + T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hsl<S, T>where + T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hsv<S, T>where + T: Clamp + Stimulus,

source§

impl<S, T> Clamp for Hwb<S, T>where T: One + Clamp + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, T::Mask: Select<T>,

source§

impl<T> Clamp for Okhsl<T>where T: Clamp + Stimulus,

source§

impl<T> Clamp for Okhsv<T>where @@ -33,12 +33,12 @@ T: One + Clamp + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, T::Mask: Select<T>,

source§

impl<T> Clamp for Oklab<T>where T: Clamp + Zero + One,

source§

impl<T> Clamp for Oklch<T>where - T: Clamp + Zero + One,

source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where - T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lab<Wp, T>where - T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lch<Wp, T>where - T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where - T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Luv<Wp, T>where - T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Xyz<Wp, T>where + T: Clamp + Zero + One,

source§

impl<Wp, T> Clamp for Hsluv<Wp, T>where + T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lab<Wp, T>where + T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lch<Wp, T>where + T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Lchuv<Wp, T>where + T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Luv<Wp, T>where + T: Clamp + Real + Zero,

source§

impl<Wp, T> Clamp for Xyz<Wp, T>where T: Clamp + Zero, - Wp: WhitePoint<T>,

source§

impl<Wp, T> Clamp for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

impl<Wp, T> Clamp for Yxy<Wp, T>where T: Clamp + Zero + One,

\ No newline at end of file diff --git a/palette/trait.ClampAssign.html b/palette/trait.ClampAssign.html index 64366a0e0..702e1fa22 100644 --- a/palette/trait.ClampAssign.html +++ b/palette/trait.ClampAssign.html @@ -36,11 +36,11 @@

Implementations on Foreign Types§

source§

impl<T> ClampAssign for [T]where T: ClampAssign,

source§

fn clamp_assign(&mut self)

Implementors§

source§

impl<C, T> ClampAssign for Alpha<C, T>where C: ClampAssign, - T: Stimulus + ClampAssign,

source§

impl<S, T> ClampAssign for Luma<S, T>where - T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Rgb<S, T>where - T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hsl<S, T>where - T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hsv<S, T>where - T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hwb<S, T>where + T: Stimulus + ClampAssign,

source§

impl<S, T> ClampAssign for Luma<S, T>where + T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Rgb<S, T>where + T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hsl<S, T>where + T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hsv<S, T>where + T: ClampAssign + Stimulus,

source§

impl<S, T> ClampAssign for Hwb<S, T>where T: One + ClampAssign + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, T::Mask: Select<T>,

source§

impl<T> ClampAssign for Okhsl<T>where T: ClampAssign + Stimulus,

source§

impl<T> ClampAssign for Okhsv<T>where @@ -48,12 +48,12 @@ T: One + ClampAssign + PartialCmp + Add<Output = T> + DivAssign + Clone + Stimulus, T::Mask: Select<T>,

source§

impl<T> ClampAssign for Oklab<T>where T: ClampAssign + Zero + One,

source§

impl<T> ClampAssign for Oklch<T>where - T: ClampAssign + Zero + One,

source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where - T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where - T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where - T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where + T: ClampAssign + Zero + One,

source§

impl<Wp, T> ClampAssign for Hsluv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lab<Wp, T>where + T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lch<Wp, T>where + T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Lchuv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Luv<Wp, T>where + T: ClampAssign + Real + Zero,

source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where T: ClampAssign + Zero, - Wp: WhitePoint<T>,

source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where T: ClampAssign + Zero + One,

\ No newline at end of file diff --git a/palette/trait.GetHue.html b/palette/trait.GetHue.html index 5c0523d44..d570fdb9b 100644 --- a/palette/trait.GetHue.html +++ b/palette/trait.GetHue.html @@ -26,18 +26,18 @@

Required Methods§

source

fn get_hue(&self) -> Self::Hue

Calculate a hue if possible.

Colors in the gray scale has no well defined hue and should preferably return 0.

-

Implementors§

source§

impl<C: GetHue, T> GetHue for Alpha<C, T>

§

type Hue = <C as GetHue>::Hue

source§

impl<S, T> GetHue for Rgb<S, T>where - T: Real + RealAngle + Trigonometry + Arithmetics + Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hsl<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hsv<S, T>where - T: Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hwb<S, T>where +

Implementors§

source§

impl<C: GetHue, T> GetHue for Alpha<C, T>

§

type Hue = <C as GetHue>::Hue

source§

impl<S, T> GetHue for Rgb<S, T>where + T: Real + RealAngle + Trigonometry + Arithmetics + Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hsl<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hsv<S, T>where + T: Clone,

§

type Hue = RgbHue<T>

source§

impl<S, T> GetHue for Hwb<S, T>where T: Clone,

§

type Hue = RgbHue<T>

source§

impl<T> GetHue for Okhsl<T>where T: Clone,

§

type Hue = OklabHue<T>

source§

impl<T> GetHue for Okhsv<T>where T: Clone,

§

type Hue = OklabHue<T>

source§

impl<T> GetHue for Okhwb<T>where T: Clone,

§

type Hue = OklabHue<T>

source§

impl<T> GetHue for Oklab<T>where T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = OklabHue<T>

source§

impl<T> GetHue for Oklch<T>where - T: Clone,

§

type Hue = OklabHue<T>

source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

source§

impl<Wp, T> GetHue for Lab<Wp, T>where - T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

source§

impl<Wp, T> GetHue for Lch<Wp, T>where - T: Clone,

§

type Hue = LabHue<T>

source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where - T: Clone,

§

type Hue = LuvHue<T>

source§

impl<Wp, T> GetHue for Luv<Wp, T>where + T: Clone,

§

type Hue = OklabHue<T>

source§

impl<Wp, T> GetHue for Hsluv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

source§

impl<Wp, T> GetHue for Lab<Wp, T>where + T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LabHue<T>

source§

impl<Wp, T> GetHue for Lch<Wp, T>where + T: Clone,

§

type Hue = LabHue<T>

source§

impl<Wp, T> GetHue for Lchuv<Wp, T>where + T: Clone,

§

type Hue = LuvHue<T>

source§

impl<Wp, T> GetHue for Luv<Wp, T>where T: RealAngle + Trigonometry + Add<T, Output = T> + Neg<Output = T> + Clone,

§

type Hue = LuvHue<T>

\ No newline at end of file diff --git a/palette/trait.IsWithinBounds.html b/palette/trait.IsWithinBounds.html index 9c676a214..8d21293eb 100644 --- a/palette/trait.IsWithinBounds.html +++ b/palette/trait.IsWithinBounds.html @@ -34,15 +34,15 @@ T::Mask: BoolMask + BitAndAssign,
source§

fn is_within_bounds(&self) -> Self::Mask

Implementors§

source§

impl<C, T> IsWithinBounds for Alpha<C, T>where C: IsWithinBounds, T: Stimulus + PartialCmp + IsWithinBounds<Mask = C::Mask>, - C::Mask: BitAnd<Output = C::Mask>,

source§

impl<S, T> IsWithinBounds for Luma<S, T>where + C::Mask: BitAnd<Output = C::Mask>,

source§

impl<S, T> IsWithinBounds for Luma<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Rgb<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Rgb<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hsl<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hsl<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hsv<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hsv<S, T>where T: PartialCmp + Stimulus, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hwb<S, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<S, T> IsWithinBounds for Hwb<S, T>where T: PartialCmp + Add<Output = T> + Clone + Stimulus, T::Mask: BitAnd<Output = T::Mask>,

source§

impl<T> IsWithinBounds for Okhsl<T>where T: PartialCmp + Stimulus, @@ -54,19 +54,19 @@ T: PartialCmp + Zero + One, T::Mask: BitAnd<Output = T::Mask>,

source§

impl<T> IsWithinBounds for Oklch<T>where T: PartialCmp + Zero + One, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Hsluv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lab<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lch<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Lchuv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Luv<Wp, T>where T: PartialCmp + Real + Zero, - T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where T: PartialCmp + Zero, T::Mask: BitAnd<Output = T::Mask>, - Wp: WhitePoint<T>,

source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where + Wp: WhitePoint<T>,

source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where T: PartialCmp + Zero + One, T::Mask: BitAnd<Output = T::Mask>,

\ No newline at end of file diff --git a/palette/trait.Lighten.html b/palette/trait.Lighten.html index eeee53ce6..6b6e83520 100644 --- a/palette/trait.Lighten.html +++ b/palette/trait.Lighten.html @@ -33,15 +33,15 @@ let color = Hsl::new_srgb(0.0, 1.0, 0.4); assert_relative_eq!(color.lighten_fixed(0.2).lightness, 0.6);
-

Implementors§

source§

impl<C: Lighten> Lighten for Alpha<C, C::Scalar>

§

type Scalar = <C as Lighten>::Scalar

source§

impl<S, T> Lighten for Luma<S, T>where +

Implementors§

source§

impl<C: Lighten> Lighten for Alpha<C, C::Scalar>

§

type Scalar = <C as Lighten>::Scalar

source§

impl<S, T> Lighten for Luma<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Rgb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Rgb<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Lighten for Hwb<S, T>where T: Real + Zero + MinMax + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> Lighten for Okhsl<T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, @@ -53,19 +53,19 @@ T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + One, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> Lighten for Oklch<T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Zero + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lab<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lab<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Luv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Luv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Xyz<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Xyz<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Yxy<Wp, T>where + Wp: WhitePoint<T>,

§

type Scalar = T

source§

impl<Wp, T> Lighten for Yxy<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + One, T::Mask: LazySelect<T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.LightenAssign.html b/palette/trait.LightenAssign.html index 8cc8f20e8..2a82bc264 100644 --- a/palette/trait.LightenAssign.html +++ b/palette/trait.LightenAssign.html @@ -50,15 +50,15 @@ assert_relative_eq!(color.lightness, 0.6);

Implementations on Foreign Types§

source§

impl<T> LightenAssign for [T]where T: LightenAssign, - T::Scalar: Clone,

§

type Scalar = <T as LightenAssign>::Scalar

source§

fn lighten_assign(&mut self, factor: Self::Scalar)

source§

fn lighten_fixed_assign(&mut self, amount: Self::Scalar)

Implementors§

source§

impl<C: LightenAssign> LightenAssign for Alpha<C, C::Scalar>

source§

impl<S, T> LightenAssign for Luma<S, T>where + T::Scalar: Clone,

§

type Scalar = <T as LightenAssign>::Scalar

source§

fn lighten_assign(&mut self, factor: Self::Scalar)

source§

fn lighten_fixed_assign(&mut self, amount: Self::Scalar)

Implementors§

source§

impl<C: LightenAssign> LightenAssign for Alpha<C, C::Scalar>

source§

impl<S, T> LightenAssign for Luma<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Rgb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Rgb<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hsl<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hwb<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> LightenAssign for Hwb<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + SubAssign + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> LightenAssign for Okhsl<T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, @@ -70,19 +70,19 @@ T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + One, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> LightenAssign for Oklch<T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Zero + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lab<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Luv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where + Wp: WhitePoint<T>,

§

type Scalar = T

source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + One, T::Mask: LazySelect<T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.Mix.html b/palette/trait.Mix.html index b5410fb76..07b84da9c 100644 --- a/palette/trait.Mix.html +++ b/palette/trait.Mix.html @@ -24,21 +24,21 @@ C: Mix, C::Scalar: Zero + One + Clamp + Arithmetics + Clone,
§

type Scalar = <C as Mix>::Scalar

source§

impl<C, T> Mix for PreAlpha<C>where C: Mix<Scalar = T> + Premultiply<Scalar = T>, - T: Real + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Luma<S, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Rgb<S, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hwb<S, T>where + T: Real + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Luma<S, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Rgb<S, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> Mix for Hwb<S, T>where T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> Mix for Okhsl<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> Mix for Okhsv<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> Mix for Okhwb<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> Mix for Oklab<T>where T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<T> Mix for Oklch<T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lab<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Luv<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Xyz<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Yxy<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lab<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Luv<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Xyz<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> Mix for Yxy<Wp, T>where T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.MixAssign.html b/palette/trait.MixAssign.html index b94e8804e..e841bc518 100644 --- a/palette/trait.MixAssign.html +++ b/palette/trait.MixAssign.html @@ -23,21 +23,21 @@ C: MixAssign, C::Scalar: Zero + One + Clamp + Arithmetics + AddAssign + Clone,
§

type Scalar = <C as MixAssign>::Scalar

source§

impl<C, T> MixAssign for PreAlpha<C>where C: MixAssign<Scalar = T> + Premultiply<Scalar = T>, - T: Real + Zero + One + Clamp + Arithmetics + AddAssign + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Luma<S, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Rgb<S, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hsl<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hsv<S, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hwb<S, T>where + T: Real + Zero + One + Clamp + Arithmetics + AddAssign + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Luma<S, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Rgb<S, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hsl<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hsv<S, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<S, T> MixAssign for Hwb<S, T>where T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> MixAssign for Okhsl<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> MixAssign for Okhsv<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> MixAssign for Okhwb<T>where T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<T> MixAssign for Oklab<T>where T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<T> MixAssign for Oklch<T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lab<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lch<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where - T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Luv<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Hsluv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lab<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lch<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Lchuv<Wp, T>where + T: RealAngle + SignedAngle + Zero + One + Clamp + AddAssign + Arithmetics + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Luv<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.RelativeContrast.html b/palette/trait.RelativeContrast.html index a43fdb1a4..954653159 100644 --- a/palette/trait.RelativeContrast.html +++ b/palette/trait.RelativeContrast.html @@ -87,23 +87,23 @@ other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast

Verify the contrast between two colors satisfies SC 1.4.11 for graphical objects. Contrast is at least 3:1 (Level AA).

-

Implementors§

source§

impl<S, T> RelativeContrast for Luma<S, T>where +

Implementors§

source§

impl<S, T> RelativeContrast for Luma<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: LumaStandard, - S::TransferFn: IntoLinear<T, T>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Rgb<S, T>where + S::TransferFn: IntoLinear<T, T>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Rgb<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hsl<S, T>where + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hsl<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hsv<S, T>where + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hsv<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, - Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hwb<S, T>where + Xyz<<S::Space as RgbSpace>::WhitePoint, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<S, T> RelativeContrast for Hwb<S, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, S: RgbStandard, @@ -119,24 +119,24 @@ Xyz<D65, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<T> RelativeContrast for Oklch<T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<D65, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Hsluv<Wp, T>where + Xyz<D65, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Hsluv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lab<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lch<Wp, T>where + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lch<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lchuv<Wp, T>where + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Lchuv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Luv<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where + Xyz<Wp, T>: FromColor<Self>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where T: Real + Arithmetics + PartialCmp, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where T: Real + Arithmetics + PartialCmp, T::Mask: LazySelect<T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.Saturate.html b/palette/trait.Saturate.html index 9e4400e59..6d095dd7a 100644 --- a/palette/trait.Saturate.html +++ b/palette/trait.Saturate.html @@ -44,18 +44,18 @@ let color = Hsl::new_srgb(0.0, 0.4, 0.5); assert_relative_eq!(color.saturate_fixed(0.2).saturation, 0.6);
-

Implementors§

source§

impl<C: Saturate> Saturate for Alpha<C, C::Scalar>

§

type Scalar = <C as Saturate>::Scalar

source§

impl<S, T> Saturate for Hsl<S, T>where +

Implementors§

source§

impl<C: Saturate> Saturate for Alpha<C, C::Scalar>

§

type Scalar = <C as Saturate>::Scalar

source§

impl<S, T> Saturate for Hsl<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Saturate for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> Saturate for Hsv<S, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> Saturate for Okhsl<T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> Saturate for Okhsv<T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + Real + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Hsluv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Lch<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> Saturate for Lchuv<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.SaturateAssign.html b/palette/trait.SaturateAssign.html index 6d624c01a..8f079c1df 100644 --- a/palette/trait.SaturateAssign.html +++ b/palette/trait.SaturateAssign.html @@ -63,18 +63,18 @@ assert_relative_eq!(color.saturation, 0.6);

Implementations on Foreign Types§

source§

impl<T> SaturateAssign for [T]where T: SaturateAssign, - T::Scalar: Clone,

§

type Scalar = <T as SaturateAssign>::Scalar

source§

fn saturate_assign(&mut self, factor: Self::Scalar)

source§

fn saturate_fixed_assign(&mut self, amount: Self::Scalar)

Implementors§

source§

impl<C: SaturateAssign> SaturateAssign for Alpha<C, C::Scalar>

source§

impl<S, T> SaturateAssign for Hsl<S, T>where + T::Scalar: Clone,

§

type Scalar = <T as SaturateAssign>::Scalar

source§

fn saturate_assign(&mut self, factor: Self::Scalar)

source§

fn saturate_fixed_assign(&mut self, amount: Self::Scalar)

Implementors§

source§

impl<C: SaturateAssign> SaturateAssign for Alpha<C, C::Scalar>

source§

impl<S, T> SaturateAssign for Hsl<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> SaturateAssign for Hsv<S, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<S, T> SaturateAssign for Hsv<S, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> SaturateAssign for Okhsl<T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Stimulus, T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<T> SaturateAssign for Okhsv<T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + Real + Stimulus, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Hsluv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Lch<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

source§

impl<Wp, T> SaturateAssign for Lchuv<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.SetHue.html b/palette/trait.SetHue.html index b602231c6..7b14fef54 100644 --- a/palette/trait.SetHue.html +++ b/palette/trait.SetHue.html @@ -24,14 +24,14 @@

Implementations on Foreign Types§

source§

impl<T, H> SetHue<H> for [T]where T: SetHue<H>, H: Clone,

source§

fn set_hue(&mut self, hue: H)

Implementors§

source§

impl<C, T, H> SetHue<H> for Alpha<C, T>where - C: SetHue<H>,

source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where + C: SetHue<H>,

source§

impl<S, T, H> SetHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

impl<S, T, H> SetHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

impl<S, T, H> SetHue<H> for Hwb<S, T>where H: Into<RgbHue<T>>,

source§

impl<T, H> SetHue<H> for Okhsl<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> SetHue<H> for Okhsv<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> SetHue<H> for Okhwb<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> SetHue<H> for Oklch<T>where - H: Into<OklabHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where + H: Into<OklabHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

impl<Wp, T, H> SetHue<H> for Lchuv<Wp, T>where H: Into<LuvHue<T>>,

\ No newline at end of file diff --git a/palette/trait.ShiftHue.html b/palette/trait.ShiftHue.html index 3baccec62..1e4b3e4e2 100644 --- a/palette/trait.ShiftHue.html +++ b/palette/trait.ShiftHue.html @@ -14,14 +14,14 @@

Required Associated Types§

source

type Scalar

The type of the hue modifier.

Required Methods§

source

fn shift_hue(self, amount: Self::Scalar) -> Self

Return a copy of self with the hue shifted by amount.

Implementors§

source§

impl<C, T> ShiftHue for Alpha<C, T>where - C: ShiftHue,

§

type Scalar = <C as ShiftHue>::Scalar

source§

impl<S, T> ShiftHue for Hsl<S, T>where - T: Add<Output = T>,

§

type Scalar = T

source§

impl<S, T> ShiftHue for Hsv<S, T>where - T: Add<Output = T>,

§

type Scalar = T

source§

impl<S, T> ShiftHue for Hwb<S, T>where + C: ShiftHue,

§

type Scalar = <C as ShiftHue>::Scalar

source§

impl<S, T> ShiftHue for Hsl<S, T>where + T: Add<Output = T>,

§

type Scalar = T

source§

impl<S, T> ShiftHue for Hsv<S, T>where + T: Add<Output = T>,

§

type Scalar = T

source§

impl<S, T> ShiftHue for Hwb<S, T>where T: Add<Output = T>,

§

type Scalar = T

source§

impl<T> ShiftHue for Okhsl<T>where T: Add<Output = T>,

§

type Scalar = T

source§

impl<T> ShiftHue for Okhsv<T>where T: Add<Output = T>,

§

type Scalar = T

source§

impl<T> ShiftHue for Okhwb<T>where T: Add<Output = T>,

§

type Scalar = T

source§

impl<T> ShiftHue for Oklch<T>where - T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where - T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Hsluv<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Lch<Wp, T>where + T: Add<Output = T>,

§

type Scalar = T

source§

impl<Wp, T> ShiftHue for Lchuv<Wp, T>where T: Add<Output = T>,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.ShiftHueAssign.html b/palette/trait.ShiftHueAssign.html index 7f3a2c3f4..5ffd412b2 100644 --- a/palette/trait.ShiftHueAssign.html +++ b/palette/trait.ShiftHueAssign.html @@ -27,14 +27,14 @@

Implementations on Foreign Types§

source§

impl<T> ShiftHueAssign for [T]where T: ShiftHueAssign, T::Scalar: Clone,

§

type Scalar = <T as ShiftHueAssign>::Scalar

source§

fn shift_hue_assign(&mut self, amount: Self::Scalar)

Implementors§

source§

impl<C, T> ShiftHueAssign for Alpha<C, T>where - C: ShiftHueAssign,

source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where - T: AddAssign,

§

type Scalar = T

source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where - T: AddAssign,

§

type Scalar = T

source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where + C: ShiftHueAssign,

source§

impl<S, T> ShiftHueAssign for Hsl<S, T>where + T: AddAssign,

§

type Scalar = T

source§

impl<S, T> ShiftHueAssign for Hsv<S, T>where + T: AddAssign,

§

type Scalar = T

source§

impl<S, T> ShiftHueAssign for Hwb<S, T>where T: AddAssign,

§

type Scalar = T

source§

impl<T> ShiftHueAssign for Okhsl<T>where T: AddAssign,

§

type Scalar = T

source§

impl<T> ShiftHueAssign for Okhsv<T>where T: AddAssign,

§

type Scalar = T

source§

impl<T> ShiftHueAssign for Okhwb<T>where T: AddAssign,

§

type Scalar = T

source§

impl<T> ShiftHueAssign for Oklch<T>where - T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where - T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where - T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where + T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Hsluv<Wp, T>where + T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Lch<Wp, T>where + T: AddAssign,

§

type Scalar = T

source§

impl<Wp, T> ShiftHueAssign for Lchuv<Wp, T>where T: AddAssign,

§

type Scalar = T

\ No newline at end of file diff --git a/palette/trait.WithAlpha.html b/palette/trait.WithAlpha.html index 3d27054d7..cfece24d1 100644 --- a/palette/trait.WithAlpha.html +++ b/palette/trait.WithAlpha.html @@ -128,21 +128,21 @@

Deriving

let transparent: Srgba<u8> = color.transparent(); assert_eq!(transparent.alpha, 0); -

Implementors§

source§

impl<C, A> WithAlpha<A> for Alpha<C, A>

§

type Color = C

§

type WithAlpha = Alpha<C, A>

source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where - _A: Stimulus,

§

type Color = Luma<S, T>

§

type WithAlpha = Alpha<Luma<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where - _A: Stimulus,

§

type Color = Rgb<S, T>

§

type WithAlpha = Alpha<Rgb<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where - _A: Stimulus,

§

type Color = Hsl<S, T>

§

type WithAlpha = Alpha<Hsl<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where - _A: Stimulus,

§

type Color = Hsv<S, T>

§

type WithAlpha = Alpha<Hsv<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where +

Implementors§

source§

impl<C, A> WithAlpha<A> for Alpha<C, A>

§

type Color = C

§

type WithAlpha = Alpha<C, A>

source§

impl<S, T, _A> WithAlpha<_A> for Luma<S, T>where + _A: Stimulus,

§

type Color = Luma<S, T>

§

type WithAlpha = Alpha<Luma<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Rgb<S, T>where + _A: Stimulus,

§

type Color = Rgb<S, T>

§

type WithAlpha = Alpha<Rgb<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsl<S, T>where + _A: Stimulus,

§

type Color = Hsl<S, T>

§

type WithAlpha = Alpha<Hsl<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hsv<S, T>where + _A: Stimulus,

§

type Color = Hsv<S, T>

§

type WithAlpha = Alpha<Hsv<S, T>, _A>

source§

impl<S, T, _A> WithAlpha<_A> for Hwb<S, T>where _A: Stimulus,

§

type Color = Hwb<S, T>

§

type WithAlpha = Alpha<Hwb<S, T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhsl<T>where _A: Stimulus,

§

type Color = Okhsl<T>

§

type WithAlpha = Alpha<Okhsl<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhsv<T>where _A: Stimulus,

§

type Color = Okhsv<T>

§

type WithAlpha = Alpha<Okhsv<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Okhwb<T>where _A: Stimulus,

§

type Color = Okhwb<T>

§

type WithAlpha = Alpha<Okhwb<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Oklab<T>where _A: Stimulus,

§

type Color = Oklab<T>

§

type WithAlpha = Alpha<Oklab<T>, _A>

source§

impl<T, _A> WithAlpha<_A> for Oklch<T>where - _A: Stimulus,

§

type Color = Oklch<T>

§

type WithAlpha = Alpha<Oklch<T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where - _A: Stimulus,

§

type Color = Hsluv<Wp, T>

§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where - _A: Stimulus,

§

type Color = Lab<Wp, T>

§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where - _A: Stimulus,

§

type Color = Lch<Wp, T>

§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where - _A: Stimulus,

§

type Color = Lchuv<Wp, T>

§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where - _A: Stimulus,

§

type Color = Luv<Wp, T>

§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where - _A: Stimulus,

§

type Color = Xyz<Wp, T>

§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where + _A: Stimulus,

§

type Color = Oklch<T>

§

type WithAlpha = Alpha<Oklch<T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Hsluv<Wp, T>where + _A: Stimulus,

§

type Color = Hsluv<Wp, T>

§

type WithAlpha = Alpha<Hsluv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lab<Wp, T>where + _A: Stimulus,

§

type Color = Lab<Wp, T>

§

type WithAlpha = Alpha<Lab<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lch<Wp, T>where + _A: Stimulus,

§

type Color = Lch<Wp, T>

§

type WithAlpha = Alpha<Lch<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Lchuv<Wp, T>where + _A: Stimulus,

§

type Color = Lchuv<Wp, T>

§

type WithAlpha = Alpha<Lchuv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Luv<Wp, T>where + _A: Stimulus,

§

type Color = Luv<Wp, T>

§

type WithAlpha = Alpha<Luv<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where + _A: Stimulus,

§

type Color = Xyz<Wp, T>

§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where _A: Stimulus,

§

type Color = Yxy<Wp, T>

§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

\ No newline at end of file diff --git a/palette/trait.WithHue.html b/palette/trait.WithHue.html index 9d9bc653d..f33d108a2 100644 --- a/palette/trait.WithHue.html +++ b/palette/trait.WithHue.html @@ -11,14 +11,14 @@ assert_eq!(blue, Hsl::new_srgb(240.0, 1.0, 0.5));

Required Methods§

source

fn with_hue(self, hue: H) -> Self

Return a copy of self with a specific hue.

Implementors§

source§

impl<C, T, H> WithHue<H> for Alpha<C, T>where - C: WithHue<H>,

source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where - H: Into<RgbHue<T>>,

source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where - H: Into<RgbHue<T>>,

source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where + C: WithHue<H>,

source§

impl<S, T, H> WithHue<H> for Hsl<S, T>where + H: Into<RgbHue<T>>,

source§

impl<S, T, H> WithHue<H> for Hsv<S, T>where + H: Into<RgbHue<T>>,

source§

impl<S, T, H> WithHue<H> for Hwb<S, T>where H: Into<RgbHue<T>>,

source§

impl<T, H> WithHue<H> for Okhsl<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> WithHue<H> for Okhsv<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> WithHue<H> for Okhwb<T>where H: Into<OklabHue<T>>,

source§

impl<T, H> WithHue<H> for Oklch<T>where - H: Into<OklabHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where - H: Into<LuvHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where - H: Into<LabHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where + H: Into<OklabHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Hsluv<Wp, T>where + H: Into<LuvHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Lch<Wp, T>where + H: Into<LabHue<T>>,

source§

impl<Wp, T, H> WithHue<H> for Lchuv<Wp, T>where H: Into<LuvHue<T>>,

\ No newline at end of file diff --git a/palette/type.Hsla.html b/palette/type.Hsla.html index 8863f4a25..b65867ec3 100644 --- a/palette/type.Hsla.html +++ b/palette/type.Hsla.html @@ -1,3 +1,3 @@ -Hsla in palette - Rust

Type Definition palette::Hsla

source ·
pub type Hsla<S = Srgb, T = f32> = Alpha<Hsl<S, T>, T>;
Expand description

Linear HSL with an alpha component. See the Hsla implementation in +Hsla in palette - Rust

Type Definition palette::Hsla

source ·
pub type Hsla<S = Srgb, T = f32> = Alpha<Hsl<S, T>, T>;
Expand description

Linear HSL with an alpha component. See the Hsla implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Hsluva.html b/palette/type.Hsluva.html index 89929a861..fa6f13df4 100644 --- a/palette/type.Hsluva.html +++ b/palette/type.Hsluva.html @@ -1,3 +1,3 @@ -Hsluva in palette - Rust

Type Definition palette::Hsluva

source ·
pub type Hsluva<Wp = D65, T = f32> = Alpha<Hsluv<Wp, T>, T>;
Expand description

HSLuv with an alpha component. See the Hsluva implementation in +Hsluva in palette - Rust

Type Definition palette::Hsluva

source ·
pub type Hsluva<Wp = D65, T = f32> = Alpha<Hsluv<Wp, T>, T>;
Expand description

HSLuv with an alpha component. See the Hsluva implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Hsva.html b/palette/type.Hsva.html index 8a6dd63d8..367137dc5 100644 --- a/palette/type.Hsva.html +++ b/palette/type.Hsva.html @@ -1,3 +1,3 @@ -Hsva in palette - Rust

Type Definition palette::Hsva

source ·
pub type Hsva<S = Srgb, T = f32> = Alpha<Hsv<S, T>, T>;
Expand description

Linear HSV with an alpha component. See the Hsva implementation in +Hsva in palette - Rust

Type Definition palette::Hsva

source ·
pub type Hsva<S = Srgb, T = f32> = Alpha<Hsv<S, T>, T>;
Expand description

Linear HSV with an alpha component. See the Hsva implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Hwba.html b/palette/type.Hwba.html index 404fdbb03..07e76e0cd 100644 --- a/palette/type.Hwba.html +++ b/palette/type.Hwba.html @@ -1,3 +1,3 @@ -Hwba in palette - Rust

Type Definition palette::Hwba

source ·
pub type Hwba<S = Srgb, T = f32> = Alpha<Hwb<S, T>, T>;
Expand description

Linear HWB with an alpha component. See the Hwba implementation in +Hwba in palette - Rust

Type Definition palette::Hwba

source ·
pub type Hwba<S = Srgb, T = f32> = Alpha<Hwb<S, T>, T>;
Expand description

Linear HWB with an alpha component. See the Hwba implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Laba.html b/palette/type.Laba.html index 2233a9d94..989b4db25 100644 --- a/palette/type.Laba.html +++ b/palette/type.Laba.html @@ -1,3 +1,3 @@ -Laba in palette - Rust

Type Definition palette::Laba

source ·
pub type Laba<Wp = D65, T = f32> = Alpha<Lab<Wp, T>, T>;
Expand description

CIE L*a*b* (CIELAB) with an alpha component. See the Laba +Laba in palette - Rust

Type Definition palette::Laba

source ·
pub type Laba<Wp = D65, T = f32> = Alpha<Lab<Wp, T>, T>;
Expand description

CIE L*a*b* (CIELAB) with an alpha component. See the Laba implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Lcha.html b/palette/type.Lcha.html index 693ee863d..e73653928 100644 --- a/palette/type.Lcha.html +++ b/palette/type.Lcha.html @@ -1,3 +1,3 @@ -Lcha in palette - Rust

Type Definition palette::Lcha

source ·
pub type Lcha<Wp = D65, T = f32> = Alpha<Lch<Wp, T>, T>;
Expand description

CIE L*C*h° with an alpha component. See the Lcha implementation in +Lcha in palette - Rust

Type Definition palette::Lcha

source ·
pub type Lcha<Wp = D65, T = f32> = Alpha<Lch<Wp, T>, T>;
Expand description

CIE L*C*h° with an alpha component. See the Lcha implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Lchuva.html b/palette/type.Lchuva.html index 96185733c..7451b1991 100644 --- a/palette/type.Lchuva.html +++ b/palette/type.Lchuva.html @@ -1,3 +1,3 @@ -Lchuva in palette - Rust

Type Definition palette::Lchuva

source ·
pub type Lchuva<Wp = D65, T = f32> = Alpha<Lchuv<Wp, T>, T>;
Expand description

CIE L*C*uv h°uv with an alpha component. See the Lchuva implementation in +Lchuva in palette - Rust

Type Definition palette::Lchuva

source ·
pub type Lchuva<Wp = D65, T = f32> = Alpha<Lchuv<Wp, T>, T>;
Expand description

CIE L*C*uv h°uv with an alpha component. See the Lchuva implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Luva.html b/palette/type.Luva.html index e99876538..8cc73d04f 100644 --- a/palette/type.Luva.html +++ b/palette/type.Luva.html @@ -1,3 +1,3 @@ -Luva in palette - Rust

Type Definition palette::Luva

source ·
pub type Luva<Wp = D65, T = f32> = Alpha<Luv<Wp, T>, T>;
Expand description

CIE L*u*v* (CIELUV) with an alpha component. See the Luva +Luva in palette - Rust

Type Definition palette::Luva

source ·
pub type Luva<Wp = D65, T = f32> = Alpha<Luv<Wp, T>, T>;
Expand description

CIE L*u*v* (CIELUV) with an alpha component. See the Luva implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Xyza.html b/palette/type.Xyza.html index ed8d4c793..780ac68a4 100644 --- a/palette/type.Xyza.html +++ b/palette/type.Xyza.html @@ -1,3 +1,3 @@ -Xyza in palette - Rust

Type Definition palette::Xyza

source ·
pub type Xyza<Wp = D65, T = f32> = Alpha<Xyz<Wp, T>, T>;
Expand description

CIE 1931 XYZ with an alpha component. See the Xyza implementation in +Xyza in palette - Rust

Type Definition palette::Xyza

source ·
pub type Xyza<Wp = D65, T = f32> = Alpha<Xyz<Wp, T>, T>;
Expand description

CIE 1931 XYZ with an alpha component. See the Xyza implementation in Alpha.

\ No newline at end of file diff --git a/palette/type.Yxya.html b/palette/type.Yxya.html index 2ce105fdb..74f5a1ba8 100644 --- a/palette/type.Yxya.html +++ b/palette/type.Yxya.html @@ -1,3 +1,3 @@ -Yxya in palette - Rust

Type Definition palette::Yxya

source ·
pub type Yxya<Wp = D65, T = f32> = Alpha<Yxy<Wp, T>, T>;
Expand description

CIE 1931 Yxy (xyY) with an alpha component. See the Yxya implementation +Yxya in palette - Rust

Type Definition palette::Yxya

source ·
pub type Yxya<Wp = D65, T = f32> = Alpha<Yxy<Wp, T>, T>;
Expand description

CIE 1931 Yxy (xyY) with an alpha component. See the Yxya implementation in Alpha.

\ No newline at end of file diff --git a/palette/xyz/index.html b/palette/xyz/index.html index 04b79ac30..4b067abfe 100644 --- a/palette/xyz/index.html +++ b/palette/xyz/index.html @@ -1,3 +1,3 @@ -palette::xyz - Rust

Module palette::xyz

source ·
Expand description

Types for the CIE 1931 XYZ color space.

+palette::xyz - Rust

Module palette::xyz

source ·
Expand description

Types for the CIE 1931 XYZ color space.

Structs

  • An iterator for Xyz values.
  • The CIE 1931 XYZ color space.

Type Definitions

\ No newline at end of file diff --git a/palette/xyz/struct.Iter.html b/palette/xyz/struct.Iter.html index 5e194e2f5..59b80316f 100644 --- a/palette/xyz/struct.Iter.html +++ b/palette/xyz/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::xyz - Rust

Struct palette::xyz::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Xyz values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::xyz - Rust

Struct palette::xyz::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Xyz values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Xyz<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Xyz<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/xyz/struct.Xyz.html b/palette/xyz/struct.Xyz.html index 30504cf3f..384c5855e 100644 --- a/palette/xyz/struct.Xyz.html +++ b/palette/xyz/struct.Xyz.html @@ -1,4 +1,4 @@ -Xyz in palette::xyz - Rust

Struct palette::xyz::Xyz

source ·
#[repr(C)]
pub struct Xyz<Wp = D65, T = f32> { +Xyz in palette::xyz - Rust

Struct palette::xyz::Xyz

source ·
#[repr(C)]
pub struct Xyz<Wp = D65, T = f32> { pub x: T, pub y: T, pub z: T, @@ -19,117 +19,117 @@ default D65.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Xyz<Wp, T>

source

pub const fn new(x: T, y: T, z: T) -> Xyz<Wp, T>

Create a CIE XYZ color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (X, Y, Z) tuple.

-
source

pub fn from_components((x, y, z): (T, T, T)) -> Self

Convert from a (X, Y, Z) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Xyz<NewWp, T>

Changes the reference white point without changing the color value.

+

Implementations§

source§

impl<Wp, T> Xyz<Wp, T>

source

pub const fn new(x: T, y: T, z: T) -> Xyz<Wp, T>

Create a CIE XYZ color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (X, Y, Z) tuple.

+
source

pub fn from_components((x, y, z): (T, T, T)) -> Self

Convert from a (X, Y, Z) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Xyz<NewWp, T>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T> Xyz<Wp, T>where +

source§

impl<Wp, T> Xyz<Wp, T>where T: Zero, - Wp: WhitePoint<T>,

source

pub fn min_x() -> T

Return the x value minimum.

-
source

pub fn max_x() -> T

Return the x value maximum.

-
source

pub fn min_y() -> T

Return the y value minimum.

-
source

pub fn max_y() -> T

Return the y value maximum.

-
source

pub fn min_z() -> T

Return the z value minimum.

-
source

pub fn max_z() -> T

Return the z value maximum.

-
source§

impl<Wp, T> Xyz<Wp, &T>

source

pub fn copied(&self) -> Xyz<Wp, T>where + Wp: WhitePoint<T>,

source

pub fn min_x() -> T

Return the x value minimum.

+
source

pub fn max_x() -> T

Return the x value maximum.

+
source

pub fn min_y() -> T

Return the y value minimum.

+
source

pub fn max_y() -> T

Return the y value maximum.

+
source

pub fn min_z() -> T

Return the z value minimum.

+
source

pub fn max_z() -> T

Return the z value maximum.

+
source§

impl<Wp, T> Xyz<Wp, &T>

source

pub fn copied(&self) -> Xyz<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Xyz<Wp, T>where +

source

pub fn cloned(&self) -> Xyz<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Xyz<Wp, &mut T>

source

pub fn set(&mut self, value: Xyz<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Xyz<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Xyz<Wp, T>where +

source§

impl<Wp, T> Xyz<Wp, &mut T>

source

pub fn set(&mut self, value: Xyz<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Xyz<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Xyz<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Xyz<Wp, T>where +

source

pub fn cloned(&self) -> Xyz<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Xyz<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Xyz<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Xyz<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Xyz<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-
source§

impl<Wp, T> Xyz<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Xyz<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Xyz<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Xyz<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Xyz<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Xyz<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Xyz<Wp, T>> for Xyz<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Xyz<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Add<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Xyz<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Xyz<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Xyz<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Xyz<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Add<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Xyz<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Xyz<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Xyz<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Xyz<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Xyz<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Xyz<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Xyz<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Xyz<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Xyz<Wp, T>where T: Clamp + Zero, - Wp: WhitePoint<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Xyz<Wp, T>where T: ClampAssign + Zero, - Wp: WhitePoint<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Xyz<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Xyz<Wp, T>

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<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>

source§

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

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

impl<Wp, T> Default for Xyz<Wp, T>where - T: Zero,

source§

fn default() -> Xyz<Wp, T>

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

impl<Wp, T> Div<T> for Xyz<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Div<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Xyz<Wp, T>> for Xyz<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Xyz<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where + Wp: WhitePoint<T>,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Xyz<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Xyz<Wp, T>

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<Wp: Debug, T: Debug> Debug for Xyz<Wp, T>

source§

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

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

impl<Wp, T> Default for Xyz<Wp, T>where + T: Zero,

source§

fn default() -> Xyz<Wp, T>

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

impl<Wp, T> Div<T> for Xyz<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Div<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Xyz<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Xyz<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Xyz<Wp, T>> for Xyz<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Xyz<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Xyz<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Xyz<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Xyz<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Xyz<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Xyz<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Xyz<Wp, T>; N]> for Xyz<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Xyz<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]

source§

fn from(color: Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)

source§

fn from(color: Xyz<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Xyz<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Xyz<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Xyz<Wp, T>>> for Xyz<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for [T; 3]

source§

fn from(color: Xyz<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T)

source§

fn from(color: Xyz<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Xyz<Wp, V>> for [Xyz<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Xyz<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Xyz<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Xyz<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Xyz<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where + Rgb<_S, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Xyz<Wp, T>where T: Real + Recip + Powi + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Xyz<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Luma<S, T>> for Xyz<Wp, T>where Self: Mul<T, Output = Self>, Wp: WhitePoint<T>, S: LumaStandard<WhitePoint = Wp>, - S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where + S::TransferFn: IntoLinear<T, T>,

source§

fn from_color_unclamped(color: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Xyz<Wp, T>where T: Real + Zero + Recip + Powi + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>, - Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where - T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where - Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Oklab<T>> for Xyz<D65, T>where + T: Real + Powi + Arithmetics,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Xyz<Wp, T>where + Oklab<T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, S> FromColorUnclamped<Rgb<S, T>> for Xyz<Wp, T>where T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + FromScalar<Scalar = T::Scalar> + Clone, Wp: WhitePoint<T::Scalar>, @@ -137,84 +137,84 @@ S::TransferFn: IntoLinear<T, T>, S::Space: RgbSpace<WhitePoint = Wp>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped(color: Rgb<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, S::TransferFn: FromLinear<T, T>, <S::Space as RgbSpace>::Primaries: Primaries<T::Scalar>, <S::Space as RgbSpace>::WhitePoint: WhitePoint<T::Scalar>, T: Arithmetics + FromScalar, T::Scalar: Real + Recip + IsValidDivisor<Mask = bool> + Arithmetics + Clone + FromScalar<Scalar = T::Scalar>, - Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( + Yxy<Any, T::Scalar>: IntoColorUnclamped<Xyz<Any, T::Scalar>>,

source§

fn from_color_unclamped( color: Xyz<<S::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Xyz<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Xyz<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, Okhsv<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklab<T>where - T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where + T: Real + Cbrt + Arithmetics,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Xyz<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Xyz<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, T: Real + Powi + Cbrt + Arithmetics + PartialCmp + Clone, - T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where + T::Mask: LazySelect<T>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Xyz<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where + T: Real + Zero + Powi + Powf + Recip + Arithmetics + PartialOrd + Clone + HasBoolMask<Mask = bool>,

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Xyz<Wp, T>

source§

fn from_color_unclamped(color: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where T: Zero + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where T: Zero + One + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Xyz<Wp, T>> for Xyz<Wp, C>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Xyz<Wp, T>> for Xyz<Wp, C>where Self: Extend<Xyz<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Xyz<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Xyz<Wp, C>where - &'a C: IntoIterator,

§

type Item = Xyz<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Xyz<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Xyz<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Xyz<Wp, C>where - C: IntoIterator,

§

type Item = Xyz<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Xyz<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Xyz<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Xyz<Wp, C>where + &'a C: IntoIterator,

§

type Item = Xyz<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Xyz<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Xyz<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Xyz<Wp, C>where + C: IntoIterator,

§

type Item = Xyz<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Xyz<Wp, T>where T: PartialCmp + Zero, T::Mask: BitAnd<Output = T::Mask>, - Wp: WhitePoint<T>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Xyz<Wp, T>where + Wp: WhitePoint<T>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Xyz<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where + Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Xyz<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone, T::Mask: LazySelect<T>, - Wp: WhitePoint<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Xyz<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Xyz<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Mul<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Xyz<Wp, T>> for Xyz<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + Wp: WhitePoint<T>,
§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Xyz<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Xyz<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Xyz<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Mul<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Xyz<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Xyz<Wp, T>> for Xyz<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Xyz<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Xyz<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Xyz<Wp, T>where T: Real + Arithmetics + PartialCmp, - T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -234,40 +234,40 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Xyz<Wp, T>> for Xyz<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Xyz<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where - T: Sub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Xyz<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Xyz<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Xyz<Wp, T>> for Xyz<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Xyz<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Xyz<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Xyz<Wp, T>> for Xyz<Wp, T>where + T: Sub<Output = T>,

§

type Output = Xyz<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Xyz<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Xyz<Wp, T>> for Xyz<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Xyz<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Xyz<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Xyz<Wp, T>> for Xyz<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where - _A: Stimulus,

§

type Color = Xyz<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Xyz<Wp, T>where + _A: Stimulus,

§

type Color = Xyz<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Xyz<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Xyz<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Xyz<Wp, T>where - T: Eq,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Xyz<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Xyz<Wp, T>where + T: Eq,

source§

impl<Wp, T> StimulusColor for Xyz<Wp, T>where T: Stimulus,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Xyz<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Xyz<Wp, T>where diff --git a/palette/xyz/type.Xyza.html b/palette/xyz/type.Xyza.html index c6e238e7d..ba77063a3 100644 --- a/palette/xyz/type.Xyza.html +++ b/palette/xyz/type.Xyza.html @@ -1,3 +1,3 @@ -Xyza in palette::xyz - Rust

Type Definition palette::xyz::Xyza

source ·
pub type Xyza<Wp = D65, T = f32> = Alpha<Xyz<Wp, T>, T>;
Expand description

CIE 1931 XYZ with an alpha component. See the Xyza implementation in +Xyza in palette::xyz - Rust

Type Definition palette::xyz::Xyza

source ·
pub type Xyza<Wp = D65, T = f32> = Alpha<Xyz<Wp, T>, T>;
Expand description

CIE 1931 XYZ with an alpha component. See the Xyza implementation in Alpha.

\ No newline at end of file diff --git a/palette/yxy/index.html b/palette/yxy/index.html index 0a54f209a..63e764c3d 100644 --- a/palette/yxy/index.html +++ b/palette/yxy/index.html @@ -1,3 +1,3 @@ -palette::yxy - Rust

Module palette::yxy

source ·
Expand description

Types for the CIE 1931 Yxy (xyY) color space.

+palette::yxy - Rust

Module palette::yxy

source ·
Expand description

Types for the CIE 1931 Yxy (xyY) color space.

Structs

  • An iterator for Yxy values.
  • The CIE 1931 Yxy (xyY) color space.

Type Definitions

\ No newline at end of file diff --git a/palette/yxy/struct.Iter.html b/palette/yxy/struct.Iter.html index dacd33a1f..558079733 100644 --- a/palette/yxy/struct.Iter.html +++ b/palette/yxy/struct.Iter.html @@ -1,6 +1,6 @@ -Iter in palette::yxy - Rust

Struct palette::yxy::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Yxy values.

-

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where - I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere +Iter in palette::yxy - Rust

Struct palette::yxy::Iter

source ·
pub struct Iter<I, Wp> { /* private fields */ }
Expand description

An iterator for Yxy values.

+

Trait Implementations§

source§

impl<I, Wp> DoubleEndedIterator for Iter<I, Wp>where + I: DoubleEndedIterator,

source§

fn next_back(&mut self) -> Option<Self::Item>

Removes and returns an element from the end of the iterator. Read more
source§

fn advance_back_by(&mut self, n: usize) -> Result<(), NonZeroUsize>

🔬This is a nightly-only experimental API. (iter_advance_by)
Advances the iterator from the back by n elements. Read more
1.37.0 · source§

fn nth_back(&mut self, n: usize) -> Option<Self::Item>

Returns the nth element from the end of the iterator. Read more
1.27.0 · source§

fn try_rfold<B, F, R>(&mut self, init: B, f: F) -> Rwhere Self: Sized, F: FnMut(B, Self::Item) -> R, R: Try<Output = B>,

This is the reverse version of Iterator::try_fold(): it takes @@ -9,9 +9,9 @@ F: FnMut(B, Self::Item) -> B,

An iterator method that reduces the iterator’s elements to a single, final value, starting from the back. Read more
1.27.0 · source§

fn rfind<P>(&mut self, predicate: P) -> Option<Self::Item>where Self: Sized, - P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where - I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where - I: Iterator,

§

type Item = Yxy<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( + P: FnMut(&Self::Item) -> bool,

Searches for an element of an iterator from the back that satisfies a predicate. Read more
source§

impl<I, Wp> ExactSizeIterator for Iter<I, Wp>where + I: ExactSizeIterator,

source§

fn len(&self) -> usize

Returns the exact remaining length of the iterator. Read more
source§

fn is_empty(&self) -> bool

🔬This is a nightly-only experimental API. (exact_size_is_empty)
Returns true if the iterator is empty. Read more
source§

impl<I, Wp> Iterator for Iter<I, Wp>where + I: Iterator,

§

type Item = Yxy<Wp, <I as Iterator>::Item>

The type of the elements being iterated over.
source§

fn next(&mut self) -> Option<Self::Item>

Advances the iterator and returns the next value. Read more
source§

fn size_hint(&self) -> (usize, Option<usize>)

Returns the bounds on the remaining length of the iterator. Read more
source§

fn count(self) -> usize

Consumes the iterator, counting the number of iterations and returning it. Read more
source§

fn next_chunk<const N: usize>( &mut self ) -> Result<[Self::Item; N], IntoIter<Self::Item, N>>where Self: Sized,

🔬This is a nightly-only experimental API. (iter_next_chunk)
Advances the iterator and returns an array containing the next N values. Read more
1.0.0 · source§

fn last(self) -> Option<Self::Item>where diff --git a/palette/yxy/struct.Yxy.html b/palette/yxy/struct.Yxy.html index b8ee021b2..6185aa3ab 100644 --- a/palette/yxy/struct.Yxy.html +++ b/palette/yxy/struct.Yxy.html @@ -1,4 +1,4 @@ -Yxy in palette::yxy - Rust

Struct palette::yxy::Yxy

source ·
#[repr(C)]
pub struct Yxy<Wp = D65, T = f32> { +Yxy in palette::yxy - Rust

Struct palette::yxy::Yxy

source ·
#[repr(C)]
pub struct Yxy<Wp = D65, T = f32> { pub x: T, pub y: T, pub luma: T, @@ -17,192 +17,192 @@ 0 to 1, where 0 is black and 1 is white.

§white_point: PhantomData<Wp>

The white point associated with the color’s illuminant and observer. D65 for 2 degree observer is used by default.

-

Implementations§

source§

impl<Wp, T> Yxy<Wp, T>

source

pub const fn new(x: T, y: T, luma: T) -> Yxy<Wp, T>

Create a CIE Yxy color.

-
source

pub fn into_components(self) -> (T, T, T)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn from_components((x, y, luma): (T, T, T)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

-
source

pub fn with_white_point<NewWp>(self) -> Yxy<NewWp, T>

Changes the reference white point without changing the color value.

+

Implementations§

source§

impl<Wp, T> Yxy<Wp, T>

source

pub const fn new(x: T, y: T, luma: T) -> Yxy<Wp, T>

Create a CIE Yxy color.

+
source

pub fn into_components(self) -> (T, T, T)

Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn from_components((x, y, luma): (T, T, T)) -> Self

Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.

+
source

pub fn with_white_point<NewWp>(self) -> Yxy<NewWp, T>

Changes the reference white point without changing the color value.

This function doesn’t change the numerical values, and thus the color it represents in an absolute sense. However, the appearance of the color may not be the same when observed with the new white point. The effect would be similar to taking a photo with an incorrect white balance.

See chromatic_adaptation for operations that can change the white point while preserving the color’s appearance.

-
source§

impl<Wp, T> Yxy<Wp, T>where - T: Zero + One,

source

pub fn min_x() -> T

Return the x value minimum.

-
source

pub fn max_x() -> T

Return the x value maximum.

-
source

pub fn min_y() -> T

Return the y value minimum.

-
source

pub fn max_y() -> T

Return the y value maximum.

-
source

pub fn min_luma() -> T

Return the luma value minimum.

-
source

pub fn max_luma() -> T

Return the luma value maximum.

-
source§

impl<Wp, T> Yxy<Wp, &T>

source

pub fn copied(&self) -> Yxy<Wp, T>where +

source§

impl<Wp, T> Yxy<Wp, T>where + T: Zero + One,

source

pub fn min_x() -> T

Return the x value minimum.

+
source

pub fn max_x() -> T

Return the x value maximum.

+
source

pub fn min_y() -> T

Return the y value minimum.

+
source

pub fn max_y() -> T

Return the y value maximum.

+
source

pub fn min_luma() -> T

Return the luma value minimum.

+
source

pub fn max_luma() -> T

Return the luma value maximum.

+
source§

impl<Wp, T> Yxy<Wp, &T>

source

pub fn copied(&self) -> Yxy<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Yxy<Wp, T>where +

source

pub fn cloned(&self) -> Yxy<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, T> Yxy<Wp, &mut T>

source

pub fn set(&mut self, value: Yxy<Wp, T>)

Update this color with new values.

-
source

pub fn as_refs(&self) -> Yxy<Wp, &T>

Borrow this color’s components as shared references.

-
source

pub fn copied(&self) -> Yxy<Wp, T>where +

source§

impl<Wp, T> Yxy<Wp, &mut T>

source

pub fn set(&mut self, value: Yxy<Wp, T>)

Update this color with new values.

+
source

pub fn as_refs(&self) -> Yxy<Wp, &T>

Borrow this color’s components as shared references.

+
source

pub fn copied(&self) -> Yxy<Wp, T>where T: Copy,

Get an owned, copied version of this color.

-
source

pub fn cloned(&self) -> Yxy<Wp, T>where +

source

pub fn cloned(&self) -> Yxy<Wp, T>where T: Clone,

Get an owned, cloned version of this color.

-
source§

impl<Wp, C> Yxy<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere +

source§

impl<Wp, C> Yxy<Wp, C>

source

pub fn iter<'a>(&'a self) -> <&'a Self as IntoIterator>::IntoIterwhere &'a Self: IntoIterator,

Return an iterator over the colors in the wrapped collections.

-
source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere +

source

pub fn iter_mut<'a>(&'a mut self) -> <&'a mut Self as IntoIterator>::IntoIterwhere &'a mut Self: IntoIterator,

Return an iterator that allows modifying the colors in the wrapped collections.

-
source

pub fn get<'a, I, T>( +

source

pub fn get<'a, I, T>( &'a self, index: I ) -> Option<Yxy<Wp, &<I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsRef<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, with references to the components at index. See slice::get for details.

-
source

pub fn get_mut<'a, I, T>( +

source

pub fn get_mut<'a, I, T>( &'a mut self, index: I ) -> Option<Yxy<Wp, &mut <I as SliceIndex<[T]>>::Output>>where T: 'a, C: AsMut<[T]>, I: SliceIndex<[T]> + Clone,

Get a color, or slice of colors, that allows modifying the components at index. See slice::get_mut for details.

-

source§

impl<Wp, T> Yxy<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

-
source

pub fn push(&mut self, value: Yxy<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

-
source

pub fn pop(&mut self) -> Option<Yxy<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

-
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

-
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where +

source§

impl<Wp, T> Yxy<Wp, Vec<T>>

source

pub fn with_capacity(capacity: usize) -> Self

Create a struct of vectors with a minimum capacity. See Vec::with_capacity for details.

+
source

pub fn push(&mut self, value: Yxy<Wp, T>)

Push an additional color’s components onto the component vectors. See Vec::push for details.

+
source

pub fn pop(&mut self) -> Option<Yxy<Wp, T>>

Pop a color’s components from the component vectors. See Vec::pop for details.

+
source

pub fn clear(&mut self)

Clear the component vectors. See Vec::clear for details.

+
source

pub fn drain<R>(&mut self, range: R) -> Iter<Drain<'_, T>, Wp> where R: RangeBounds<usize> + Clone,

Return an iterator that moves colors out of the specified range.

-

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Yxy<Wp, T>> for Yxy<Wp, T>where +

Trait Implementations§

source§

impl<Wp, T> AbsDiffEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: AbsDiffEq, - T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate -equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Yxy<Wp, T>where - T: Add<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Add<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where - T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Yxy<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Yxy<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Yxy<Wp, T>where - T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to -the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where - T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Yxy<Wp, T>where - T: Clone,

source§

fn clone(&self) -> Yxy<Wp, T>

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<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>

source§

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

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

impl<Wp, T> Default for Yxy<Wp, T>where + T::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq<T>>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> Self::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq(&self, other: &Self, epsilon: T::Epsilon) -> bool

A test for equality that uses the absolute difference to compute the approximate +equality of two numbers.
source§

fn abs_diff_ne(&self, other: &Self, epsilon: T::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<Wp, T> Add<T> for Yxy<Wp, T>where + T: Add<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, c: T) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> Add<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Add<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the + operator.
source§

fn add(self, other: Self) -> Self::Output

Performs the + operation. Read more
source§

impl<Wp, T> AddAssign<T> for Yxy<Wp, T>where + T: AddAssign + Clone,

source§

fn add_assign(&mut self, c: T)

Performs the += operation. Read more
source§

impl<Wp, T> AddAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: AddAssign,

source§

fn add_assign(&mut self, other: Self)

Performs the += operation. Read more
source§

impl<Wp, T> ArrayCast for Yxy<Wp, T>

§

type Array = [T; 3]

The output type of a cast to an array.
source§

impl<Wp, T> AsMut<[T]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<[T; 3]> for Yxy<Wp, T>

source§

fn as_mut(&mut self) -> &mut [T; 3]

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsMut<Yxy<Wp, T>> for [T; 3]

source§

fn as_mut(&mut self) -> &mut Yxy<Wp, T>

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<[T; 3]> for Yxy<Wp, T>

source§

fn as_ref(&self) -> &[T; 3]

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> AsRef<Yxy<Wp, T>> for [T; 3]

source§

fn as_ref(&self) -> &Yxy<Wp, T>

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<Wp, T> Clamp for Yxy<Wp, T>where + T: Clamp + Zero + One,

source§

fn clamp(self) -> Self

Return a new color where out-of-bounds components have been changed to +the nearest valid values. Read more
source§

impl<Wp, T> ClampAssign for Yxy<Wp, T>where + T: ClampAssign + Zero + One,

source§

fn clamp_assign(&mut self)

Changes out-of-bounds components to the nearest valid values. Read more
source§

impl<Wp, T> Clone for Yxy<Wp, T>where + T: Clone,

source§

fn clone(&self) -> Yxy<Wp, T>

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<Wp: Debug, T: Debug> Debug for Yxy<Wp, T>

source§

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

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

impl<Wp, T> Default for Yxy<Wp, T>where T: Zero, Wp: WhitePoint<T>, - Xyz<Wp, T>: IntoColorUnclamped<Self>,

source§

fn default() -> Yxy<Wp, T>

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

impl<Wp, T> Div<T> for Yxy<Wp, T>where - T: Div<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Div<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where - T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where - T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Yxy<Wp, T>> for Yxy<Wp, C>where - C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Yxy<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where + Xyz<Wp, T>: IntoColorUnclamped<Self>,

source§

fn default() -> Yxy<Wp, T>

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

impl<Wp, T> Div<T> for Yxy<Wp, T>where + T: Div<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, c: T) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> Div<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Div<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the / operator.
source§

fn div(self, other: Self) -> Self::Output

Performs the / operation. Read more
source§

impl<Wp, T> DivAssign<T> for Yxy<Wp, T>where + T: DivAssign + Clone,

source§

fn div_assign(&mut self, c: T)

Performs the /= operation. Read more
source§

impl<Wp, T> DivAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: DivAssign,

source§

fn div_assign(&mut self, other: Self)

Performs the /= operation. Read more
source§

impl<Wp, T> EuclideanDistance for Yxy<Wp, T>where + T: Real + Sub<T, Output = T> + Add<T, Output = T> + Mul<T, Output = T> + Clone,

§

type Scalar = T

The type for the distance value.
source§

fn distance_squared(self, other: Self) -> Self::Scalar

Calculate the squared Euclidean distance from self to other. Read more
source§

impl<Wp, T, C> Extend<Yxy<Wp, T>> for Yxy<Wp, C>where + C: Extend<T>,

source§

fn extend<I: IntoIterator<Item = Yxy<Wp, T>>>(&mut self, iter: I)

Extends a collection with the contents of an iterator. Read more
source§

fn extend_one(&mut self, item: A)

🔬This is a nightly-only experimental API. (extend_one)
Extends a collection with exactly one element.
source§

fn extend_reserve(&mut self, additional: usize)

🔬This is a nightly-only experimental API. (extend_one)
Reserves capacity in a collection for the given number of additional elements. Read more
source§

impl<'a, Wp, T> From<&'a [T; 3]> for &'a Yxy<Wp, T>

source§

fn from(array: &'a [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a Yxy<Wp, T>> for &'a [T; 3]

source§

fn from(color: &'a Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut [T; 3]> for &'a mut Yxy<Wp, T>

source§

fn from(array: &'a mut [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<'a, Wp, T> From<&'a mut Yxy<Wp, T>> for &'a mut [T; 3]

source§

fn from(color: &'a mut Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<[T; 3]> for Yxy<Wp, T>

source§

fn from(array: [T; 3]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<[Yxy<Wp, T>; N]> for Yxy<Wp, V>where [T; N]: Default, - V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Yxy<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where - Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]

source§

fn from(color: Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)

source§

fn from(color: Yxy<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where + V: FromScalarArray<N, Scalar = T>,

source§

fn from(colors: [Yxy<Wp, T>; N]) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T>

source§

fn from(components: (T, T, T)) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Box<[T; 3], Global>> for Box<Yxy<Wp, T>>

source§

fn from(array: Box<[T; 3]>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<PreAlpha<Yxy<Wp, T>>> for Yxy<Wp, T>where + Self: Premultiply<Scalar = T>,

source§

fn from(premultiplied: PreAlpha<Self>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for [T; 3]

source§

fn from(color: Yxy<Wp, T>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T)

source§

fn from(color: Yxy<Wp, T>) -> (T, T, T)

Converts to this type from the input type.
source§

impl<Wp, T, V, const N: usize> From<Yxy<Wp, V>> for [Yxy<Wp, T>; N]where Self: Default, - V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Yxy<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where - _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where + V: IntoScalarArray<N, Scalar = T>,

source§

fn from(color: Yxy<Wp, V>) -> Self

Converts to this type from the input type.
source§

impl<Wp, T, _C, _A> FromColorUnclamped<Alpha<_C, _A>> for Yxy<Wp, T>where + _C: IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Alpha<_C, _A>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsl<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsl<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsl<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Hsluv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsluv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsluv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hsv<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hsv<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hsv<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Hwb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Hwb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Hwb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lab<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lab<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lab<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lch<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Lch<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lch<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Lchuv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where + Xyz<Wp, T>: FromColorUnclamped<Lchuv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Lchuv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T, S> FromColorUnclamped<Luma<S, T>> for Yxy<S::WhitePoint, T>where S: LumaStandard, S::TransferFn: IntoLinear<T, T>, - Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where + Self: Default,

source§

fn from_color_unclamped(luma: Luma<S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Luv<Wp, T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Luv<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Luv<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsl<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsl<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsl<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhsv<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhsv<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhsv<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Okhwb<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Okhwb<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Okhwb<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklab<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklab<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklab<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Oklch<T>> for Yxy<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Oklch<T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Oklch<T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, _S> FromColorUnclamped<Rgb<_S, T>> for Yxy<Wp, T>where _S: RgbStandard, _S::Space: RgbSpace<WhitePoint = Wp>, Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Rgb<_S, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Rgb<_S, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Xyz<Wp, T>> for Yxy<Wp, T>where T: Zero + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(xyz: Xyz<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsl<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hsv<S, T>where S: RgbStandard, - Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Rgb<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Hwb<S, T>where S: RgbStandard, - Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Hsv<S, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> for Rgb<S, T>where S: RgbStandard, - Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( + Xyz<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>: FromColorUnclamped<Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped( color: Yxy<<<S as RgbStandard>::Space as RgbSpace>::WhitePoint, T> -) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where +) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<S, T> FromColorUnclamped<Yxy<<S as LumaStandard>::WhitePoint, T>> for Luma<S, T>where S: LumaStandard, - S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where + S::TransferFn: FromLinear<T, T>,

source§

fn from_color_unclamped(color: Yxy<S::WhitePoint, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsl<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhsv<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Okhwb<T>where D65: WhitePoint<T>, - Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where + Okhsv<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklab<T>where D65: WhitePoint<T>, - Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where + Xyz<D65, T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<T> FromColorUnclamped<Yxy<D65, T>> for Oklch<T>where D65: WhitePoint<T>, - Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where + Oklab<T>: FromColorUnclamped<Yxy<D65, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<D65, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Hsluv<Wp, T>where Wp: WhitePoint<T>, - Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where + Lchuv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lab<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lch<Wp, T>where Wp: WhitePoint<T>, - Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where + Lab<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Lchuv<Wp, T>where Wp: WhitePoint<T>, - Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where + Luv<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Luv<Wp, T>where Wp: WhitePoint<T>, - Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where + Xyz<Wp, T>: FromColorUnclamped<Yxy<Wp, T>> + IntoColorUnclamped<Self>,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Xyz<Wp, T>where T: Zero + One + IsValidDivisor + Arithmetics + Clone, - T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Yxy<Wp, T>> for Yxy<Wp, C>where + T::Mask: LazySelect<T> + Clone,

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T>

source§

fn from_color_unclamped(color: Yxy<Wp, T>) -> Self

Convert from T. The resulting color might be invalid in its color space. Read more
source§

impl<Wp, T, C> FromIterator<Yxy<Wp, T>> for Yxy<Wp, C>where Self: Extend<Yxy<Wp, T>>, - C: Default,

source§

fn from_iter<I: IntoIterator<Item = Yxy<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where - T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Yxy<Wp, C>where - &'a C: IntoIterator,

§

type Item = Yxy<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Yxy<Wp, C>where - &'a mut C: IntoIterator,

§

type Item = Yxy<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Yxy<Wp, C>where - C: IntoIterator,

§

type Item = Yxy<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where + C: Default,

source§

fn from_iter<I: IntoIterator<Item = Yxy<Wp, T>>>(iter: I) -> Self

Creates a value from an iterator. Read more
source§

impl<Wp, T> HasBoolMask for Yxy<Wp, T>where + T: HasBoolMask,

§

type Mask = <T as HasBoolMask>::Mask

The mask type to use for selecting Self values.
source§

impl<'a, Wp, C> IntoIterator for &'a Yxy<Wp, C>where + &'a C: IntoIterator,

§

type Item = Yxy<Wp, <&'a C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<'a, Wp, C> IntoIterator for &'a mut Yxy<Wp, C>where + &'a mut C: IntoIterator,

§

type Item = Yxy<Wp, <&'a mut C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<&'a mut C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, C> IntoIterator for Yxy<Wp, C>where + C: IntoIterator,

§

type Item = Yxy<Wp, <C as IntoIterator>::Item>

The type of the elements being iterated over.
§

type IntoIter = Iter<<C as IntoIterator>::IntoIter, Wp>

Which kind of iterator are we turning this into?
source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
source§

impl<Wp, T> IsWithinBounds for Yxy<Wp, T>where T: PartialCmp + Zero + One, - T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Yxy<Wp, T>where + T::Mask: BitAnd<Output = T::Mask>,

source§

fn is_within_bounds(&self) -> T::Mask

Check if the color’s components are within the expected range bounds. Read more
source§

impl<Wp, T> Lighten for Yxy<Wp, T>where T: Real + Zero + MinMax + Clamp + Arithmetics + PartialCmp + Clone + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten(self, factor: T) -> Self

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed(self, amount: T) -> Self

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> LightenAssign for Yxy<Wp, T>where T: Real + Zero + MinMax + ClampAssign + AddAssign + Arithmetics + PartialCmp + Clone + One, - T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value -ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Yxy<Wp, T>where - T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where - T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Yxy<Wp, T>where - T: Mul<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Mul<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where - T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Yxy<Wp, T>> for Yxy<Wp, T>where - T: PartialEq,

source§

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

This method tests for self and other values to be equal, and is used + T::Mask: LazySelect<T>,

§

type Scalar = T

The type of the lighten modifier.
source§

fn lighten_assign(&mut self, factor: T)

Scale the color towards the maximum lightness by factor, a value +ranging from 0.0 to 1.0. Read more
source§

fn lighten_fixed_assign(&mut self, amount: T)

Lighten the color by amount, a value ranging from 0.0 to 1.0. Read more
source§

impl<Wp, T> Mix for Yxy<Wp, T>where + T: Real + Zero + One + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix(self, other: Self, factor: T) -> Self

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> MixAssign for Yxy<Wp, T>where + T: Real + Zero + One + AddAssign + Arithmetics + Clamp + Clone,

§

type Scalar = T

The type of the mixing factor.
source§

fn mix_assign(&mut self, other: Self, factor: T)

Mix the color with an other color, by factor. Read more
source§

impl<Wp, T> Mul<T> for Yxy<Wp, T>where + T: Mul<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, c: T) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> Mul<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Mul<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the * operator.
source§

fn mul(self, other: Self) -> Self::Output

Performs the * operation. Read more
source§

impl<Wp, T> MulAssign<T> for Yxy<Wp, T>where + T: MulAssign + Clone,

source§

fn mul_assign(&mut self, c: T)

Performs the *= operation. Read more
source§

impl<Wp, T> MulAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: MulAssign,

source§

fn mul_assign(&mut self, other: Self)

Performs the *= operation. Read more
source§

impl<Wp, T> PartialEq<Yxy<Wp, T>> for Yxy<Wp, T>where + T: PartialEq,

source§

fn eq(&self, other: &Self) -> 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<Wp, T> Premultiply for Yxy<Wp, T>where +sufficient, and should not be overridden without very good reason.

source§

impl<Wp, T> Premultiply for Yxy<Wp, T>where T: Real + Stimulus + Zero + IsValidDivisor + Mul<T, Output = T> + Div<T, Output = T> + Clone, - T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where + T::Mask: LazySelect<T> + Clone,

§

type Scalar = T

The color’s component type.
source§

fn premultiply(self, alpha: T) -> PreAlpha<Self>

Alpha mask the color. Read more
source§

fn unpremultiply(premultiplied: PreAlpha<Self>) -> (Self, T)

Alpha unmask the color, resulting in a color and transparency pair. Read more
source§

impl<Wp, T> RelativeContrast for Yxy<Wp, T>where T: Real + Arithmetics + PartialCmp, - T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( + T::Mask: LazySelect<T>,

§

type Scalar = T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
The type of the contrast ratio.
source§

fn get_contrast_ratio(self, other: Self) -> T

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Calculate the contrast ratio between two colors.
source§

fn has_min_contrast_text( self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask

👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.3. Contrast @@ -222,39 +222,39 @@ self, other: Self ) -> <Self::Scalar as HasBoolMask>::Mask
👎Deprecated since 0.7.2: replaced by palette::color_difference::Wcag21RelativeContrast
Verify the contrast between two colors satisfies SC 1.4.11 for graphical -objects. Contrast is at least 3:1 (Level AA).
source§

impl<Wp, T> RelativeEq<Yxy<Wp, T>> for Yxy<Wp, T>where +objects. Contrast is at least 3:1 (Level AA).

source§

impl<Wp, T> RelativeEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: RelativeEq, - T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( + T::Epsilon: Clone,

source§

fn default_max_relative() -> T::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( +) -> bool

A test for equality that uses a relative comparison if the values are far apart.
source§

fn relative_ne( &self, other: &Self, epsilon: T::Epsilon, max_relative: T::Epsilon -) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where - T: SaturatingAdd<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where - T: SaturatingSub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Yxy<Wp, T>where - T: Sub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where - T: Sub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where - T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where - T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Yxy<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Yxy<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Yxy<Wp, T>> for Yxy<Wp, T>where +) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<Wp, T> SaturatingAdd<T> for Yxy<Wp, T>where + T: SaturatingAdd<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, c: T) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingAdd<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingAdd<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_add(self, other: Self) -> Self::Output

Returns the sum of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<T> for Yxy<Wp, T>where + T: SaturatingSub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, c: T) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> SaturatingSub<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SaturatingSub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type.
source§

fn saturating_sub(self, other: Self) -> Self::Output

Returns the difference of self and other, but saturates instead of overflowing.
source§

impl<Wp, T> Sub<T> for Yxy<Wp, T>where + T: Sub<Output = T> + Clone,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, c: T) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> Sub<Yxy<Wp, T>> for Yxy<Wp, T>where + T: Sub<Output = T>,

§

type Output = Yxy<Wp, T>

The resulting type after applying the - operator.
source§

fn sub(self, other: Self) -> Self::Output

Performs the - operation. Read more
source§

impl<Wp, T> SubAssign<T> for Yxy<Wp, T>where + T: SubAssign + Clone,

source§

fn sub_assign(&mut self, c: T)

Performs the -= operation. Read more
source§

impl<Wp, T> SubAssign<Yxy<Wp, T>> for Yxy<Wp, T>where + T: SubAssign,

source§

fn sub_assign(&mut self, other: Self)

Performs the -= operation. Read more
source§

impl<'a, Wp, T> TryFrom<&'a [T]> for &'a Yxy<Wp, T>

§

type Error = <&'a [T; 3] as TryFrom<&'a [T]>>::Error

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

fn try_from(slice: &'a [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<'a, Wp, T> TryFrom<&'a mut [T]> for &'a mut Yxy<Wp, T>

§

type Error = <&'a mut [T; 3] as TryFrom<&'a mut [T]>>::Error

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

fn try_from(slice: &'a mut [T]) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl<Wp, T> UlpsEq<Yxy<Wp, T>> for Yxy<Wp, T>where T: UlpsEq, - T::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where - _A: Stimulus,

§

type Color = Yxy<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided + T::Epsilon: Clone,
source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
source§

fn ulps_ne(&self, other: &Self, epsilon: T::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<Wp, T, _A> WithAlpha<_A> for Yxy<Wp, T>where + _A: Stimulus,

§

type Color = Yxy<Wp, T>

The opaque color type, without any transparency. Read more
§

type WithAlpha = Alpha<Yxy<Wp, T>, _A>

The color type with transparency applied. Read more
source§

fn with_alpha(self, alpha: _A) -> Self::WithAlpha

Transforms the color into a transparent color with the provided alpha value. If Self already has a transparency, it is -overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has +overwritten. Read more
source§

fn without_alpha(self) -> Self::Color

Removes the transparency from the color. If Self::Color has an internal transparency field, that field will be set to -A::max_intensity() to make it opaque. Read more
source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere +A::max_intensity() to make it opaque. Read more

source§

fn split(self) -> (Self::Color, _A)

Splits the color into separate color and transparency values. Read more
source§

fn opaque(self) -> Self::WithAlphawhere A: Stimulus,

Transforms the color into a fully opaque color with a transparency field. If Self already has a transparency, it is overwritten. Read more
source§

fn transparent(self) -> Self::WithAlphawhere A: Zero,

Transforms the color into a fully transparent color. If Self -already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Yxy<Wp, T>where - T: Copy,

source§

impl<Wp, T> Eq for Yxy<Wp, T>where +already has a transparency, it is overwritten. Read more
source§

impl<Wp, T> Copy for Yxy<Wp, T>where + T: Copy,

source§

impl<Wp, T> Eq for Yxy<Wp, T>where T: Eq,

Auto Trait Implementations§

§

impl<Wp, T> RefUnwindSafe for Yxy<Wp, T>where T: RefUnwindSafe, Wp: RefUnwindSafe,

§

impl<Wp, T> Send for Yxy<Wp, T>where diff --git a/palette/yxy/type.Yxya.html b/palette/yxy/type.Yxya.html index 75c59f04b..8dbf6bf9b 100644 --- a/palette/yxy/type.Yxya.html +++ b/palette/yxy/type.Yxya.html @@ -1,3 +1,3 @@ -Yxya in palette::yxy - Rust

Type Definition palette::yxy::Yxya

source ·
pub type Yxya<Wp = D65, T = f32> = Alpha<Yxy<Wp, T>, T>;
Expand description

CIE 1931 Yxy (xyY) with an alpha component. See the Yxya implementation +Yxya in palette::yxy - Rust

Type Definition palette::yxy::Yxya

source ·
pub type Yxya<Wp = D65, T = f32> = Alpha<Yxy<Wp, T>, T>;
Expand description

CIE 1931 Yxy (xyY) with an alpha component. See the Yxya implementation in Alpha.

\ No newline at end of file diff --git a/search-index.js b/search-index.js index be15aece2..83c7c4d3a 100644 --- a/search-index.js +++ b/search-index.js @@ -1,5 +1,5 @@ var searchIndex = JSON.parse('{\ -"palette":{"doc":"A library that makes linear color calculations and …","t":"DIIIQCIIIICCCGGGGIDGDGDGQDGCCIQSDDGDGDGIIGGGGDDGGIIQIDGDGDGDDGDGIDIIQQQQQQQQQQQQQIIIGGGGIQYIDGDGMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMALLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMALLLLLLLLLLLLLLLLLLLFAKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMAALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLMMMMMMMAAAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLMMAMAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAAAAALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAKLLLLLLLKLLLLLLLKLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLLLLLLMMMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMAMMMMMMMMMKLLLLLLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLLLLLLMMLLLLLAMMAMDQDCIQLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLKLLIIIIIIIIKKKKKKKKKNIIIQINNEDNNNNNNNEDDINQNNNNLLLLLLLLLLLLMMMKLLLLLLLLLLLLLLLKLKLLLLLLLLLLLKLLLLLLLLLLLMMMLLLLLKLLLLLLLMKLLLLLLLKLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLKLLLKLKLKLKLKLKLKLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLKLIIIIQIKKKKKQIYIIIIIIIIIIDNIIIIIQQQQIIIIIINDDIIIIQIIIIIDELLLLLKKKLLLLLKLLLLLKKKKLLLLLLKKLLLLLLLLLLMLLLLLLLLLLMKKKLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFKFFFFFKLLLLLFFFFFFFFKLLLLLLLLLLFFFFFFFFFKLLLLLLLLLLFFFFFKLLLLLFFFFFFFFKMFFKLLLLLLLLLKKKLLLLLLLLLLLLFFFFKLLLLLLLLLLLLLLLKKKLLLLLKLLLLLKLMMIINDEINNLKLKLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLMMLLLLLLLLLLLLLLIIIIIIIQQQQQQIKKLKKLLLLLKKKLKIIDIYIDIIIIDIILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKLLLLLLLLLLKLLLKKLLLKLLLLLLLLLLLLLLLLLKLLLKLLLLLLLLLLLLCICICCKAKAADDDISLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLMLLMLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLMLDGDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLMLLMLLLLLLLMLDDDDDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLMLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLMLDDGMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLGGDGGDIGGGGGQQLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLMLLMMLRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRFIIIIIIIIIIIIIIIQQIIIIIIIIIQIIIKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKDDGLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLMLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLDDGLLLLMLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLDDGMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLEGGNDGGGGGGNIQDIIGNQGGQQLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIIIKKKDDDDDDDDDDDDDDDDILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMMDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLMM","n":["Alpha","ArrayExt","Clamp","ClampAssign","Color","ColorDifference","Darken","DarkenAssign","Desaturate","DesaturateAssign","FromColor","FromColorMut","FromColorMutGuard","GammaLuma","GammaLumaa","GammaSrgb","GammaSrgba","GetHue","Hsl","Hsla","Hsluv","Hsluva","Hsv","Hsva","Hue","Hwb","Hwba","IntoColor","IntoColorMut","IsWithinBounds","Item","LENGTH","Lab","LabHue","Laba","Lch","Lcha","Lchuv","Lchuva","Lighten","LightenAssign","LinLuma","LinLumaa","LinSrgb","LinSrgba","Luv","LuvHue","Luva","Mat3","Mix","MixAssign","Next","NextArray","Okhsl","Okhsla","Okhsv","Okhsva","Okhwb","Okhwba","Oklab","OklabHue","Oklaba","Oklch","Oklcha","RelativeContrast","RgbHue","Saturate","SaturateAssign","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","SetHue","ShiftHue","ShiftHueAssign","Srgb","SrgbLuma","SrgbLumaa","Srgba","WithAlpha","WithAlpha","WithAlpha","WithHue","Xyz","Xyza","Yxy","Yxya","a","a","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","alpha","alpha","angle","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","atop","atop","atop","atop","atop","b","b","blackness","blackness","blend","blend_with","blend_with","blend_with","blend_with","blend_with","bool_mask","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast","chroma","chroma","chroma","chromatic_adaptation","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","color","color_difference","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","contrast_ratio","convert","darken","darken_assign","darken_fixed","darken_fixed_assign","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","delta_e","delta_e","desaturate","desaturate_assign","desaturate_fixed","desaturate_fixed_assign","difference","difference","distance_squared","distance_squared","distance_squared","distance_squared","distance_squared","div","div","div","div","div","div","div","div","div","div","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","encoding","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get_color_difference","get_color_difference","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","has_enhanced_contrast_large_text","has_enhanced_contrast_large_text","has_enhanced_contrast_text","has_enhanced_contrast_text","has_min_contrast_graphics","has_min_contrast_graphics","has_min_contrast_large_text","has_min_contrast_large_text","has_min_contrast_text","has_min_contrast_text","hsl","hsluv","hsv","hue","hue","hue","hue","hue","hue","hue","hue","hue","hue","hues","hwb","hybrid_distance","hybrid_distance","hybrid_distance","improved_delta_e","improved_delta_e","inside","inside","inside","inside","inside","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","l","l","l","l","l","l","l","lab","lch","lchuv","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lightness","lightness","luma","luma","luv","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mul","mul","mul","mul","mul","mul","mul","mul","mul","mul","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","named","num","okhsl","okhsv","okhwb","oklab","oklch","opaque","outside","outside","outside","outside","outside","over","over","over","over","over","plus","plus","plus","plus","plus","premultiply","premultiply","premultiply","premultiply","premultiply","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","rgb","saturate","saturate","saturate","saturate","saturate","saturate","saturate","saturate","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturation","saturation","saturation","saturation","saturation","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","split","split","split","split","split","split","split","split","split","split","split","split","split","split","split","split","standard","standard","standard","stimulus","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transparent","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","unpremultiply","unpremultiply","unpremultiply","unpremultiply","unpremultiply","v","value","value","white_point","white_point","white_point","white_point","white_point","white_point","white_point","white_point","whiteness","whiteness","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","x","x","xor","xor","xor","xor","xor","xyz","y","y","yxy","z","Alpha","Color","Iter","PreAlpha","WithAlpha","WithAlpha","abs_diff_eq","adapt_from_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","alpha","arrays_from","arrays_from","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","atop","blend_with","borrow","borrow","borrow_mut","borrow_mut","burn","clamp","clamp_assign","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clone","clone_into","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","color","components_from","components_from","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","count","darken","default","default_epsilon","default_max_relative","default_max_ulps","deref","deref_mut","difference","div","div","div_assign","div_assign","dodge","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","eq","equivalent","exclusion","extend","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped_mut","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_encoding","from_encoding","from_format","from_format","from_format","from_format","from_format","from_format","from_format","from_format","from_iter","from_linear","from_linear","from_stimulus","from_stimulus","from_u16","from_u32","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get_hue","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","hard_light","inside","into","into","into_angle","into_angle","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_encoding","into_encoding","into_format","into_format","into_format","into_format","into_format","into_format","into_format","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_linear","into_stimulus","into_stimulus","into_u16","into_u32","is_within_bounds","iter","iter_mut","len","lighten","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","max_alpha","min_alpha","mix","mix_assign","mul","mul","mul_assign","mul_assign","multiply","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_srgb","new_srgb","new_srgb","new_srgb_const","new_srgb_const","new_srgb_const","next","next_back","opaque","outside","over","overlay","plus","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","premultiply","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","relative_eq","saturate","saturate_assign","saturate_fixed","saturate_fixed_assign","saturating_add","saturating_add","saturating_sub","saturating_sub","screen","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set_hue","shift_hue","shift_hue_assign","size_hint","soft_light","split","split","sub","sub","sub_assign","sub_assign","to_owned","transparent","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","ulps_eq","with_alpha","with_alpha","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_hue","with_white_point","with_white_point","without_alpha","without_alpha","xor","AngleEq","FromAngle","FullRotation","HalfRotation","IntoAngle","RealAngle","SignedAngle","UnsignedAngle","angle_eq","degrees_to_radians","from_angle","full_rotation","half_rotation","into_angle","normalize_signed_angle","normalize_unsigned_angle","radians_to_degrees","Add","Blend","BlendFunction","BlendWith","Color","Compose","DestinationAlpha","DestinationColor","Equation","Equations","Max","Min","One","OneMinusDestinationAlpha","OneMinusDestinationColor","OneMinusSourceAlpha","OneMinusSourceColor","Parameter","Parameters","PreAlpha","Premultiply","ReverseSubtract","Scalar","SourceAlpha","SourceColor","Subtract","Zero","abs_diff_eq","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add","add_assign","add_assign","add_assign","alpha","alpha_equation","alpha_parameters","apply_to","apply_to","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","atop","atop","blend_with","blend_with","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","burn","burn","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","color","color_equation","color_parameters","components_from","components_from","components_from","components_from","components_from","darken","darken","default","default_epsilon","default_max_relative","default_max_ulps","deref","deref_mut","destination","difference","difference","div","div","div","div_assign","div_assign","div_assign","dodge","dodge","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","exclusion","exclusion","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_equations","from_parameters","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","hard_light","hard_light","inside","inside","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","lighten","lighten","mix","mix_assign","mul","mul","mul","mul_assign","mul_assign","mul_assign","multiply","multiply","new","new_opaque","outside","outside","over","over","overlay","overlay","plus","plus","premultiply","relative_eq","screen","screen","soft_light","soft_light","source","sub","sub","sub","sub_assign","sub_assign","sub_assign","to_owned","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","ulps_eq","unpremultiply","unpremultiply","xor","xor","BitOps","BoolMask","HasBoolMask","LazySelect","Mask","Select","from_bool","is_false","is_true","lazy_select","select","Array","ArrayCast","ArrayCast","ArraysAs","ArraysAsMut","ArraysFrom","ArraysInto","AsArrays","AsArraysMut","AsComponents","AsComponentsMut","AsUints","AsUintsMut","BoxedSliceCastError","CapacityMismatch","ComponentOrder","ComponentsAs","ComponentsAsMut","ComponentsFrom","ComponentsInto","Error","Error","Error","Error","FromArrays","FromComponents","FromUints","IntoArrays","IntoComponents","IntoUints","LengthMismatch","Packed","SliceCastError","TryComponentsAs","TryComponentsAsMut","TryComponentsInto","TryFromComponents","Uint","UintCast","UintsAs","UintsAsMut","UintsFrom","UintsInto","VecCastError","VecCastErrorKind","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_as","arrays_as_mut","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_arrays","as_arrays_mut","as_components","as_components_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_uints","as_uints_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","channel_order","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","color","components_as","components_as_mut","components_from","components_from","components_from","components_from","components_from","components_from","components_into","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_array","from_array_array","from_array_box","from_array_mut","from_array_ref","from_array_slice","from_array_slice_box","from_array_slice_mut","from_array_vec","from_arrays","from_component_array","from_component_slice","from_component_slice_box","from_component_slice_mut","from_component_vec","from_components","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_uint","from_uint_array","from_uint_mut","from_uint_ref","from_uint_slice","from_uint_slice_box","from_uint_slice_mut","from_uint_vec","from_uints","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_array","into_array_array","into_array_box","into_array_mut","into_array_ref","into_array_slice","into_array_slice_box","into_array_slice_mut","into_array_vec","into_arrays","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_component_array","into_component_slice","into_component_slice_box","into_component_slice_mut","into_component_vec","into_components","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_uint","into_uint_array","into_uint_mut","into_uint_ref","into_uint_slice","into_uint_slice_box","into_uint_slice_mut","into_uint_vec","into_uints","kind","map_slice_box_in_place","map_vec_in_place","pack","pack","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_components_as","try_components_as_mut","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_component_slice","try_from_component_slice_box","try_from_component_slice_mut","try_from_component_vec","try_from_components","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","uints_as","uints_as_mut","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","unpack","unpack","values","values","AdaptFrom","AdaptInto","Bradford","ConeResponseMatrices","Method","TransformMatrix","VonKries","XyzScaling","adapt_from","adapt_from_using","adapt_into","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","components_from","components_from","from","from","from_angle","from_angle","from_stimulus","from_stimulus","generate_transform_matrix","get_cone_response","get_cone_response","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","inv_ma","ma","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","Ciede2000","ColorDifference","DeltaE","EuclideanDistance","HyAb","ImprovedCiede2000","ImprovedDeltaE","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Wcag21RelativeContrast","delta_e","difference","distance","distance_squared","get_color_difference","has_enhanced_contrast_large_text","has_enhanced_contrast_text","has_min_contrast_graphics","has_min_contrast_large_text","has_min_contrast_text","hybrid_distance","improved_delta_e","improved_difference","relative_contrast","relative_luminance","FromColor","FromColorMut","FromColorMutGuard","FromColorUnclamped","FromColorUnclamped","FromColorUnclampedMut","FromColorUnclampedMutGuard","IntoColor","IntoColorMut","IntoColorUnclamped","IntoColorUnclampedMut","OutOfBounds","TryFromColor","TryIntoColor","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","color","components_from","components_from","components_from","deref","deref","deref_mut","deref_mut","description","drop","drop","fmt","fmt","from","from","from","from_angle","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped_mut","from_stimulus","from_stimulus","from_stimulus","into","into","into","into_angle","into_angle","into_angle","into_clamped_guard","into_color","into_color","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_stimulus","into_stimulus","into_stimulus","into_unclamped_guard","restore","restore","then_into_color_mut","then_into_color_mut","then_into_color_unclamped_mut","then_into_color_unclamped_mut","to_string","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","F2p2","FromLinear","Gamma","IntoLinear","Linear","Srgb","from_linear","gamma","into_linear","linear","srgb","F2p2","Gamma","GammaFn","Number","VALUE","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","components_from","components_from","components_from","eq","eq","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from_angle","from_angle","from_angle","from_linear","from_stimulus","from_stimulus","from_stimulus","into","into","into","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_linear","into_stimulus","into_stimulus","into_stimulus","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","Linear","LinearFn","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","components_from","components_from","eq","eq","equivalent","equivalent","fmt","fmt","from","from","from_angle","from_angle","from_linear","from_stimulus","from_stimulus","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_linear","into_stimulus","into_stimulus","to_owned","to_owned","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","Srgb","adapt_into_using","arrays_from","arrays_into","blue","borrow","borrow_mut","clone","clone_into","components_from","eq","equivalent","fmt","from","from_angle","from_linear","from_linear","from_linear","from_stimulus","green","into","into_angle","into_color","into_color_unclamped","into_linear","into_linear","into_linear","into_stimulus","red","rgb_to_xyz_matrix","to_owned","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","xyz_to_rgb_matrix","Hsl","Hsla","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","lightness","max_lightness","max_saturation","min_lightness","min_saturation","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","saturation","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Hsluv","Hsluva","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","max_saturation","min_l","min_saturation","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Hsv","Hsva","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_saturation","max_value","min_saturation","min_value","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","saturation","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","value","with_capacity","LabHue","LabHueIter","LuvHue","LuvHueIter","OklabHue","OklabHueIter","RgbHue","RgbHueIter","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","as_ref","as_ref","as_ref","as_ref","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clear","clear","clear","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","components_from","components_from","components_from","components_from","copied","copied","copied","copied","copied","copied","copied","copied","count","count","count","count","drain","drain","drain","drain","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_cartesian","from_cartesian","from_cartesian","from_cartesian","from_degrees","from_degrees","from_degrees","from_degrees","from_format","from_format","from_format","from_format","from_radians","from_radians","from_radians","from_radians","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get","get","get","get","get_mut","get_mut","get_mut","get_mut","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_cartesian","into_cartesian","into_cartesian","into_cartesian","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_degrees","into_degrees","into_degrees","into_degrees","into_format","into_format","into_format","into_format","into_inner","into_inner","into_inner","into_inner","into_iter","into_iter","into_iter","into_iter","into_positive_degrees","into_positive_degrees","into_positive_degrees","into_positive_degrees","into_positive_radians","into_positive_radians","into_positive_radians","into_positive_radians","into_radians","into_radians","into_radians","into_radians","into_raw_degrees","into_raw_degrees","into_raw_degrees","into_raw_degrees","into_raw_radians","into_raw_radians","into_raw_radians","into_raw_radians","into_stimulus","into_stimulus","into_stimulus","into_stimulus","iter","iter","iter","iter","iter_mut","iter_mut","iter_mut","iter_mut","len","len","len","len","new","new","new","new","next","next","next","next","next_back","next_back","next_back","next_back","pop","pop","pop","pop","push","push","push","push","set","set","set","set","size_hint","size_hint","size_hint","size_hint","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","with_capacity","with_capacity","with_capacity","with_capacity","Hwb","Hwba","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","blackness","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_blackness","max_whiteness","min_blackness","min_whiteness","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","whiteness","with_capacity","Iter","Lab","Laba","a","adapt_into_using","arrays_from","arrays_into","as_refs","b","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_a","max_b","max_l","min_a","min_b","min_l","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Iter","Lch","Lcha","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_chroma","max_extended_chroma","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Iter","Lchuv","Lchuva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_chroma","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","GammaLuma","GammaLumaa","Iter","LinLuma","LinLumaa","Luma","LumaStandard","Lumaa","PackedAluma","PackedLumaa","SrgbLuma","SrgbLumaa","TransferFn","WhitePoint","abs_diff_eq","abs_diff_ne","adapt_from_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","arrays_from","arrays_from","arrays_into","arrays_into","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_refs","atop","blend_with","borrow","borrow","borrow_mut","borrow_mut","channels","clamp","clamp_assign","clear","clone","clone_into","cloned","cloned","components_from","components_from","copied","copied","count","default","default_epsilon","default_max_relative","default_max_ulps","distance_squared","div","div","div_assign","div_assign","drain","eq","equivalent","extend","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_components","from_encoding","from_format","from_iter","from_linear","from_stimulus","from_stimulus","from_u16","from_u16","get","get_contrast_ratio","get_mut","inside","into","into","into_angle","into_angle","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_encoding","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_stimulus","into_stimulus","into_u16","into_u16","is_within_bounds","iter","iter_mut","len","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","luma","max_luma","min_luma","mix","mix_assign","mul","mul","mul_assign","mul_assign","new","next","next_back","outside","over","plus","pop","premultiply","push","relative_eq","relative_luminance","relative_ne","saturating_add","saturating_add","saturating_sub","saturating_sub","set","size_hint","split","standard","sub","sub","sub_assign","sub_assign","to_owned","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","ulps_eq","ulps_ne","unpremultiply","with_alpha","with_capacity","without_alpha","xor","Al","La","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","components_from","components_from","eq","eq","equivalent","equivalent","fmt","fmt","from","from","from_angle","from_angle","from_stimulus","from_stimulus","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","pack","pack","pack","pack","to_owned","to_owned","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","unpack","unpack","unpack","unpack","Iter","Luv","Luva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","max_u","max_v","min_l","min_u","min_v","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","u","uints_from","uints_into","v","white_point","with_capacity","ALICEBLUE","ANTIQUEWHITE","AQUA","AQUAMARINE","AZURE","BEIGE","BISQUE","BLACK","BLANCHEDALMOND","BLUE","BLUEVIOLET","BROWN","BURLYWOOD","CADETBLUE","CHARTREUSE","CHOCOLATE","CORAL","CORNFLOWERBLUE","CORNSILK","CRIMSON","CYAN","DARKBLUE","DARKCYAN","DARKGOLDENROD","DARKGRAY","DARKGREEN","DARKGREY","DARKKHAKI","DARKMAGENTA","DARKOLIVEGREEN","DARKORANGE","DARKORCHID","DARKRED","DARKSALMON","DARKSEAGREEN","DARKSLATEBLUE","DARKSLATEGRAY","DARKSLATEGREY","DARKTURQUOISE","DARKVIOLET","DEEPPINK","DEEPSKYBLUE","DIMGRAY","DIMGREY","DODGERBLUE","FIREBRICK","FLORALWHITE","FORESTGREEN","FUCHSIA","GAINSBORO","GHOSTWHITE","GOLD","GOLDENROD","GRAY","GREEN","GREENYELLOW","GREY","HONEYDEW","HOTPINK","INDIANRED","INDIGO","IVORY","KHAKI","LAVENDER","LAVENDERBLUSH","LAWNGREEN","LEMONCHIFFON","LIGHTBLUE","LIGHTCORAL","LIGHTCYAN","LIGHTGOLDENRODYELLOW","LIGHTGRAY","LIGHTGREEN","LIGHTGREY","LIGHTPINK","LIGHTSALMON","LIGHTSEAGREEN","LIGHTSKYBLUE","LIGHTSLATEGRAY","LIGHTSLATEGREY","LIGHTSTEELBLUE","LIGHTYELLOW","LIME","LIMEGREEN","LINEN","MAGENTA","MAROON","MEDIUMAQUAMARINE","MEDIUMBLUE","MEDIUMORCHID","MEDIUMPURPLE","MEDIUMSEAGREEN","MEDIUMSLATEBLUE","MEDIUMSPRINGGREEN","MEDIUMTURQUOISE","MEDIUMVIOLETRED","MIDNIGHTBLUE","MINTCREAM","MISTYROSE","MOCCASIN","NAVAJOWHITE","NAVY","OLDLACE","OLIVE","OLIVEDRAB","ORANGE","ORANGERED","ORCHID","PALEGOLDENROD","PALEGREEN","PALETURQUOISE","PALEVIOLETRED","PAPAYAWHIP","PEACHPUFF","PERU","PINK","PLUM","POWDERBLUE","PURPLE","REBECCAPURPLE","RED","ROSYBROWN","ROYALBLUE","SADDLEBROWN","SALMON","SANDYBROWN","SEAGREEN","SEASHELL","SIENNA","SILVER","SKYBLUE","SLATEBLUE","SLATEGRAY","SLATEGREY","SNOW","SPRINGGREEN","STEELBLUE","TAN","TEAL","THISTLE","TOMATO","TURQUOISE","VIOLET","WHEAT","WHITE","WHITESMOKE","YELLOW","YELLOWGREEN","from_str","Abs","Arithmetics","Cbrt","Clamp","ClampAssign","Exp","FromScalar","FromScalarArray","Hypot","IntoScalarArray","IsValidDivisor","MinMax","MulAdd","MulSub","One","Output","Output","PartialCmp","Powf","Powi","Powu","Real","Recip","Round","SaturatingAdd","SaturatingSub","Scalar","Sqrt","Trigonometry","Zero","abs","acos","asin","atan","atan2","cbrt","ceil","clamp","clamp_assign","clamp_max","clamp_max_assign","clamp_min","clamp_min_assign","cos","eq","exp","floor","from_array","from_f64","from_scalar","gt","gt_eq","hypot","into_array","is_valid_divisor","lt","lt_eq","max","min","min_max","mul_add","mul_sub","neq","one","powf","powi","powu","recip","round","saturating_add","saturating_sub","sin","sin_cos","sqrt","tan","zero","Iter","Okhsl","Okhsla","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","lightness","max_lightness","max_saturation","min_lightness","min_saturation","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Iter","Okhsv","Okhsva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_saturation","max_value","min_saturation","min_value","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","value","with_capacity","Iter","Okhwb","Okhwba","adapt_into_using","arrays_from","arrays_into","as_refs","blackness","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_blackness","max_whiteness","min_blackness","min_whiteness","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","whiteness","with_capacity","Iter","Oklab","Oklaba","a","adapt_into_using","arrays_from","arrays_into","as_refs","b","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","min_l","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Iter","Oklch","Oklcha","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","FromHexError","GammaSrgb","GammaSrgba","HexFormatError","Iter","LinSrgb","LinSrgba","PackedAbgr","PackedArgb","PackedBgra","PackedRgba","ParseIntError","Primaries","Primaries","Rgb","RgbSpace","RgbStandard","Rgba","RgbaHexFormatError","Space","Srgb","Srgba","TransferFn","WhitePoint","abs_diff_eq","abs_diff_ne","adapt_from_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","as_refs","atop","blend_with","blue","blue","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","channels","clamp","clamp_assign","clear","clone","clone_into","cloned","cloned","components_from","components_from","components_from","copied","copied","count","default","default_epsilon","default_max_relative","default_max_ulps","distance_squared","div","div","div_assign","div_assign","drain","eq","equivalent","extend","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_components","from_encoding","from_format","from_iter","from_linear","from_stimulus","from_stimulus","from_stimulus","from_str","from_str","from_u32","from_u32","get","get_contrast_ratio","get_hue","get_mut","green","green","inside","into","into","into","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_encoding","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_stimulus","into_stimulus","into_stimulus","into_u32","into_u32","is_within_bounds","iter","iter_mut","len","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","max_blue","max_green","max_red","min_blue","min_green","min_red","mix","mix_assign","mul","mul","mul_assign","mul_assign","new","next","next_back","outside","over","plus","pop","premultiply","push","red","red","relative_eq","relative_luminance","relative_ne","rgb_to_xyz_matrix","saturating_add","saturating_add","saturating_sub","saturating_sub","set","size_hint","source","split","standard","sub","sub","sub_assign","sub_assign","to_owned","to_string","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","ulps_eq","ulps_ne","unpremultiply","with_alpha","with_capacity","without_alpha","xor","xyz_to_rgb_matrix","Abgr","Argb","Bgra","Rgba","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","components_from","components_from","components_from","components_from","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_stimulus","from_stimulus","from_stimulus","from_stimulus","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","pack","pack","pack","pack","pack","pack","pack","pack","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","unpack","unpack","unpack","unpack","unpack","unpack","unpack","unpack","FromStimulus","IntoStimulus","Stimulus","StimulusColor","from_stimulus","into_stimulus","max_intensity","A","Any","B","C","D50","D50Degree10","D55","D55Degree10","D65","D65Degree10","D75","D75Degree10","E","F11","F2","F7","WhitePoint","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","Iter","Xyz","Xyza","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","len","max_x","max_y","max_z","min_x","min_y","min_z","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","with_white_point","x","y","z","Iter","Yxy","Yxya","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","len","luma","max_luma","max_x","max_y","min_luma","min_x","min_y","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","with_white_point","x","y"],"q":[[0,"palette"],[2185,"palette::alpha"],[2702,"palette::angle"],[2719,"palette::blend"],[2988,"palette::bool_mask"],[2999,"palette::cast"],[3290,"palette::chromatic_adaptation"],[3349,"palette::color_difference"],[3378,"palette::convert"],[3484,"palette::encoding"],[3495,"palette::encoding::gamma"],[3583,"palette::encoding::linear"],[3641,"palette::encoding::srgb"],[3680,"palette::hsl"],[3741,"palette::hsluv"],[3798,"palette::hsv"],[3859,"palette::hues"],[4091,"palette::hwb"],[4152,"palette::lab"],[4210,"palette::lch"],[4268,"palette::lchuv"],[4325,"palette::luma"],[4546,"palette::luma::channels"],[4610,"palette::luv"],[4668,"palette::named"],[4817,"palette::num"],[4893,"palette::okhsl"],[4951,"palette::okhsv"],[5008,"palette::okhwb"],[5065,"palette::oklab"],[5118,"palette::oklch"],[5173,"palette::rgb"],[5427,"palette::rgb::channels"],[5555,"palette::stimulus"],[5562,"palette::white_point"],[6027,"palette::xyz"],[6086,"palette::yxy"]],"d":["An alpha component wrapper for colors, for adding …","Extension trait for fixed size arrays.","An operator for restricting a color’s components to …","An assigning operator for restricting a color’s …","The opaque color type, without any transparency.","","Operators for darkening a color;","Assigning operators for darkening a color;","Operator for decreasing the saturation (or chroma) of a …","Assigning operator for decreasing the saturation (or …","","","","Gamma 2.2 encoded luminance.","Gamma 2.2 encoded luminance with an alpha component.","Gamma 2.2 encoded sRGB.","Gamma 2.2 encoded sRGB with an alpha component.","A trait for colors where a hue may be calculated.","HSL color space.","Linear HSL with an alpha component. See the Hsla …","HSLuv color space.","HSLuv with an alpha component. See the Hsluva …","HSV color space.","Linear HSV with an alpha component. See the Hsva …","The kind of hue unit this color space uses.","HWB color space.","Linear HWB with an alpha component. See the Hwba …","","","Checks if color components are within their expected range …","The type of the array’s items.","The number of items in the array.","The CIE L*a*b* (CIELAB) color space.","A hue type for the CIE L*a*b* family of color spaces.","CIE L*a*b* (CIELAB) with an alpha component. See the Laba …","CIE L*C*h°, a polar version of CIE L*a*b*.","CIE L*C*h° with an alpha component. See the Lcha …","CIE L*C*uv h°uv, a polar version of CIE L*u*v*.","CIE L*C*uv h°uv with an alpha component. See the Lchuva …","Operators for lightening a color.","Assigning operators for lightening a color.","Linear luminance.","Linear luminance with an alpha component.","Linear sRGB.","Linear sRGB with an alpha component.","The CIE L*u*v* (CIELUV) color space.","A hue type for the CIE L*u*v* family of color spaces.","CIE L*u*v* (CIELUV) with an alpha component. See the Luva …","A 9 element array representing a 3x3 matrix.","Linear color interpolation of two colors.","Assigning linear color interpolation of two colors.","An array of size N + 1.","Temporary helper trait for getting an array type of size …","A Hue/Saturation/Lightness representation of Oklab in the …","Okhsl with an alpha component.","A Hue/Saturation/Value representation of Oklab in the sRGB …","Okhsv with an alpha component. See the Okhsva …","A Hue/Whiteness/Blackness representation of Oklab in the …","Okhwb with an alpha component. See the Okhwba …","The Oklab color space.","A hue type for the Oklab color space.","Oklab with an alpha component.","Oklch, a polar version of Oklab.","Oklch with an alpha component. See the Oklcha …","A trait for calculating relative contrast between two …","A hue type for the RGB family of color spaces.","Operator for increasing the saturation (or chroma) of a …","Assigning operator for increasing the saturation (or …","The type of the contrast ratio.","The type of the mixing factor.","The type of the mixing factor.","The type of the lighten modifier.","The type of the lighten modifier.","The type of the darken modifier.","The type of the darken modifier.","The type of the hue modifier.","The type of the hue modifier.","The type of the saturation modifier.","The type of the saturation modifier.","The type of the desaturation modifier.","The type of the desaturation modifier.","Change the hue of a color to a specific value without …","Operator for increasing or decreasing the hue by an amount.","Assigning operator for increasing or decreasing the hue by …","Non-linear sRGB, the most common RGB input/output format.","sRGB encoded luminance.","sRGB encoded luminance with an alpha component.","Non-linear sRGB with an alpha component.","A trait for color types that can have or be given …","The color type with transparency applied.","","Change the hue of a color to a specific value.","The CIE 1931 XYZ color space.","CIE 1931 XYZ with an alpha component. See the Xyza …","The CIE 1931 Yxy (xyY) color space.","CIE 1931 Yxy (xyY) with an alpha component. See the Yxya …","a* goes from red at -128 to green at 127.","a changes the hue from reddish to greenish, when moving …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Types related to transparent colors.","The transparency component. 0.0 (or 0u8) is fully …","Traits for working with angular values, such as for in …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","b* goes from yellow at -128 to blue at 127.","b changes the hue from yellowish to blueish, when moving …","The blackness of the color. It specifies the amount black …","The amount of black, mixed in the pure hue, ranging from …","Color blending and blending equations.","","","","","","Traits for abstracting over Boolean types.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Traits and functions for casting colors to and from other …","C* is the colorfulness of the color. It’s similar to …","C*uv is the colorfulness of the color. It’s similar to …","chroma is the colorfulness of the color. A color with …","Convert colors from one reference white point to another","Return a new color where out-of-bounds components have …","","","","","","","","","","","","","","","","Changes out-of-bounds components to the nearest valid …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The color.","Algorithms for calculating the difference between colors.","","","","","","","","","","","","","","","","","","","","Calculate the ratio between two luma values.","Traits for converting between color spaces.","Scale the color towards the minimum lightness by factor, a …","Scale the color towards the minimum lightness by factor, a …","Darken the color by amount, a value ranging from 0.0 to 1.0…","Darken the color by amount, a value ranging from 0.0 to 1.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Scale the color towards the minimum saturation by factor, …","Scale the color towards the minimum saturation by factor, …","Increase the saturation by amount, a value ranging from 0.0…","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","Number and color encoding traits, types and standards.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Converts lab to Okhwb in the bounds of sRGB.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calculate the contrast ratio between two colors.","","","","","","","","","","","","","","","Calculate a hue if possible.","","","","","","","","","","","","","","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3. …","Verify the contrast between two colors satisfies SC 1.4.3. …","Types for the HSL color space.","Types for the HSLuv color space.","Types for the HSV color space.","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees of a circle.","The hue of the color, in degrees of a circle.","The hue of the color, in degrees of a circle.","h is the hue of the color, in degrees. Decides if it’s …","Hues and hue related types.","Types for the HWB color space.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Check if the color’s components are within the expected …","","","","","","","","","","","","","","","","Decides how light the color will look. 0.0 will be black, …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","l is the lightness of the color. 0 gives absolute black …","L is the lightness of the color. 0 gives absolute black …","Types for the CIE L*a*b* (CIELAB) color space.","Types for the CIE L*C*h° color space.","Types for the CIE L*C*uv h°uv color space.","Scale the color towards the maximum lightness by factor, a …","","","","","","","","","","","","","","","","Scale the color towards the maximum lightness by factor, a …","","","","","","","","","","","","","","","","Lighten the color by amount, a value ranging from 0.0 to …","","","","","","","","","","","","","","","","Lighten the color by amount, a value ranging from 0.0 to …","","","","","","","","","","","","","","","","Decides how light the color will look. 0.0 will be black, …","The relative luminance of the color, where","Types for luma and luminance (grayscale) values.","luma (Y) was a measure of the brightness or luminance of a …","Types for the CIE L*u*v* (CIELUV) color space.","Mix the color with an other color, by factor.","","","","","","","","","","","","","","","","Mix the color with an other color, by factor.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A collection of named color constants. Can be toggled with …","Traits for abstracting over numeric types.","Types for the Okhsl color space.","Types for the Okhsv color space.","Types for the Okhwb color space.","Types for the Oklab color space.","Types for the Oklch color space.","Transforms the color into a fully opaque color with a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Types for the RGB color space, including spaces and …","Scale the color towards the maximum saturation by factor, …","","","","","","","","Scale the color towards the maximum saturation by factor, …","","","","","","","","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The colorfulness of the color. 0.0 gives gray scale colors …","The colorfulness of the color, as a percentage of the …","The colorfulness of the color. 0.0 gives gray scale colors …","The saturation (freedom of black or white) of the color.","The saturation (freedom of whitishness) of the color.","Change the hue to a specific value.","","","","","","","","","","","Return a copy of self with the hue shifted by amount.","","","","","","","","","","","Shifts the hue by amount.","","","","","","","","","","","Splits the color into separate color and transparency …","","","","","","","","","","","","","","","","The white point and RGB primaries this color is adapted …","The white point and RGB primaries this color is adapted …","The white point and RGB primaries this color is adapted …","Traits for working with stimulus colors and values, such …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Transforms the color into a fully transparent color. If …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The range of valid u* varies depending on the values of L* …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The range of valid v* varies depending on the values of L* …","Decides how bright the color will look. 0.0 will be black, …","The monochromatic brightness of the color.","Defines the tristimulus values of the CIE Illuminants.","The white point and RGB primaries this color is adapted …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The whiteness of the color. It specifies the amount white …","The amount of white, mixed in the pure hue, ranging from …","Transforms the color into a transparent color with the …","","","","","","","","","","","","","","","","Return a copy of self with a specific hue.","","","","","","","","","","","Removes the transparency from the color. If Self::Color has","","","","","","","","","","","","","","","","X is the scale of what can be seen as a response curve for …","x chromaticity co-ordinate derived from XYZ color space as …","","","","","","Types for the CIE 1931 XYZ color space.","Y is the luminance of the color, where 0.0 is black and …","y chromaticity co-ordinate derived from XYZ color space as …","Types for the CIE 1931 Yxy (xyY) color space.","Z is the scale of what can be seen as the blue …","An alpha component wrapper for colors, for adding …","The opaque color type, without any transparency.","An iterator for transparent colors.","","A trait for color types that can have or be given …","The color type with transparency applied.","","","","","","","","","The transparency component. 0.0 (or 0u8) is fully …","","","","","","","","","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","","","","","","","","","","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","The color.","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","","","","","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","Convert from a (hue, saturation, lightness, alpha) tuple.","Convert from a (red, green, blue, alpha) tuple.","Convert from a (hue, whiteness, blackness, alpha) tuple.","Convert from a (hue, saturation, value, alpha) tuple.","Convert from a (hue, saturation, value, alpha) tuple.","Convert from a (hue, saturation, lightness, alpha) tuple.","Convert from a (X, Y, Z, alpha) tuple.","Convert from a (L, C, h, alpha) tuple.","Convert from a (L\\\\*, C\\\\*uv, h°uv, alpha) tuple.","Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.","Convert from a (hue, whiteness, blackness, alpha) tuple.","Convert from a (luma, alpha) tuple.","Convert from a (hue, saturation, l, alpha) tuple.","Convert from u (L\\\\*, u\\\\*, v\\\\*, alpha) tuple.","Convert from a (L, a, b, alpha) tuple.","Convert from a (L\\\\*, a\\\\*, b\\\\*, alpha) tuple.","Convert from a (L\\\\*, C\\\\*, h°, alpha) tuple.","Convert to linear luminance from a different encoding with …","Convert RGB from a different encoding to linear with …","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert the RGBA components from other number types.","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert from another component type.","","Convert linear RGB to non-linear RGB with transparency.","Convert linear luminance to non-linear luminance with …","","","Convert from a packed u16 with a specific component order.","Convert from a packed u32 with specifiable component order.","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Convert to a (hue, saturation, lightness, alpha) tuple.","Convert to a (L\\\\*, C\\\\*uv, h°uv, alpha) tuple.","Convert to a (hue, saturation, lightness, alpha) tuple.","Convert to a (hue, whiteness, blackness, alpha) tuple.","Convert to a (L\\\\*, a\\\\*, b\\\\*, alpha) tuple.","Convert to a (hue, whiteness, blackness, alpha) tuple.","Convert to a (hue, saturation, l, alpha) tuple.","Convert to a (L, C, h, alpha) tuple.","Convert to a (X, Y, Z, alpha) tuple.","Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.","Convert to a (hue, saturation, value, alpha) tuple.","Convert to a (red, green, blue, alpha) tuple.","Convert to a (L, a, b, alpha) tuple.","Convert to a (hue, saturation, value, alpha) tuple.","Convert to u (L\\\\*, u\\\\*, v\\\\*, alpha) tuple.","Convert to a (L\\\\*, C\\\\*, h°, alpha) tuple.","Convert to a (luma, alpha) tuple.","Convert a linear color to a different encoding with …","Convert a linear color to a different encoding with …","Convert the RGBA components into other number types.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","","","","","Convert the color to linear luminance with transparency.","Convert the color to linear RGB with transparency.","","","Convert to a packed u16 with with a specific component …","Convert to a packed u32 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","","Return the alpha value maximum.","Return the alpha value minimum.","","","","","","","","Create an HSV color with transparency.","Non-linear RGB.","Create an Oklch color with transparency.","Create a CIE L*C*uv h°uv color with transparency.","Create a luminance color with transparency.","Create an HSL color with transparency.","Create an Okhsl color with transparency.","Create an Okhwb color with transparency.","Create an Oklab color with transparency.","Create a CIE Yxy color with transparency.","Create a CIE L*C*h° color with transparency.","Create a CIE L*u*v* color with transparency.","Create an HWB color with transparency.","Create an HSLuv color with transparency.","Create a CIE XYZ color with transparency.","Create a CIE L*a*b* with transparency.","Create an Okhsv color with transparency.","Create an HSL color with transparency. This is the same as …","Create an Okhsla color. This is the same as Okhsla::new …","Create an HSV color with transparency. This is the same as …","Create an HSLuv color with transparency. This is the same …","Create an Oklcha color. This is the same as Oklcha::new …","Create a CIE L*C*uv h°uv color with transparency. This is …","Create an HWB color with transparency. This is the same as …","Create a CIE L*C*h° color with transparency. This is the …","Create an Okhwba color. This is the same as Okhwba::new …","Create an Okhsva color. This is the same as Okhsva::new …","Create an sRGB HSL color with transparency. This method …","Create an sRGB HSV color with transparency. This method …","Create an sRGB HWB color with transparency. This method …","Create an sRGB HWB color with transparency. This is the …","Create an sRGB HSL color with transparency. This is the …","Create an sRGB HSV color with transparency. This is the …","","","Transforms the color into a fully opaque color with a …","","","","","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Alpha mask the color by its transparency.","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","","","","","","","","","","","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","","","","","","Splits the color into separate color and transparency …","","","","","","","Transforms the color into a fully transparent color. If …","","","","","","","","","","","","","","","","","","","Transforms the color into a transparent color with the …","","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","","Changes the reference white point without changing the …","Changes the reference white point without changing the …","Removes the transparency from the color. If Self::Color has","","","Angular equality, where 0 degrees and 360 degrees are …","Performs value-to-value conversion between angle types. …","Represents types that can express a full rotation (i.e. …","Represents types that can express half of a rotation (i.e. …","Performs value-to-value conversion between angle types. …","Angle values that are real numbers and can represent both …","Angle types that can represent the full circle using …","Angle types that can represent the full circle as positive …","Check if self and other represent the same angle on a …","Consider self to be degrees and convert it to radians.","Performs a conversion from angle.","Return a value that represents a full rotation (i.e. 360 …","Return a value that represents half of a rotation (i.e. …","Performs a conversion into T.","Normalize self to a range corresponding to -180 to 180 …","Normalize self to a range corresponding to 0 to 360 …","Consider self to be radians and convert it to degrees.","Add the source and destination, according to …","A trait for different ways of mixing colors together.","A trait for custom blend functions.","Blending with a custom blend function.","The base color type of Self.","The Porter Duff composition operators, as described by W3C.","The destination alpha.","The destination color, or alpha.","A blending equation.","A pair of blending equations and corresponding parameters.","Create a color where each component is the largest of each …","Create a color where each component is the smallest of …","A simple 1.","One minus the destination alpha.","One minus the destination color, or alpha.","One minus the source alpha.","One minus the source color, or alpha.","A blending parameter.","A pair of source and destination parameters.","Premultiplied alpha wrapper.","Alpha masking and unmasking.","Subtract the source from the destination, according to …","The color’s component type.","The source alpha.","The source color, or alpha.","Subtract the destination from the source, according to …","A simple 0.","","","","","","","","","","","","","The transparency component. 0.0 is fully transparent and …","The equation for the alpha component.","The parameters for the alpha component.","Apply this blend function to a pair of colors.","","","","","","","","","","","","","","","","Place self over only the visible parts of other.","","Blend self, as the source color, with destination, using …","","","","","","","","","","","","Darken other to reflect self. Results in other if self is …","","","","","","","","","","","","The premultiplied color components (…","The equation for the color components.","The parameters for the color components.","","","","","","Return the darkest parts of self and other.","","","","","","","","The destination parameter.","Return the absolute difference between self and other. It…","","","","","","","","Lighten other to reflect self. Results in other if self is …","","","","","","","","","","","","Similar to difference, but appears to result in a lower …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","Create a pair of blending equations, where all the …","Create a pair of additive blending equations with the …","","","","","","Multiply self or other if other is dark, or screen them if …","","Results in the parts of self that overlaps the visible …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Return the lightest parts of self and other.","","","","","","","","","","Multiply self with other. This uses the alpha component to …","","Alpha mask color with alpha.","Create an opaque alpha masked color.","Results in the parts of self that lies outside the visible …","","Place self over other. This is the good old common alpha …","","Multiply self or other if other is dark, or screen them if …","","Add self and other. This uses the alpha component to …","","Alpha mask the color.","","Make a color which is at least as light as self or other.","","Lighten other if self is light, or darken other as if it’…","","The source parameter.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Alpha unmask the color, resulting in a color and …","Alpha unmask the color.","Results in either self or other, where they do not overlap.","","A helper trait that collects bit traits under one name.","Basic methods for boolean masks.","Associates a Boolean type to the implementing type.","Like Select, but can avoid evaluating the input.","The mask type to use for selecting Self values.","Makes a mask bale to select between two values.","Create a new mask where each lane is set to value.","Checks if all lanes in the mask are false.","Checks if all lanes in the mask are true.","Select lanes from the output of a when corresponding lanes …","Select lanes from a when corresponding lanes in self are …","The output type of a cast to an array.","Marker trait for types that can be represented as a fixed …","","Trait for casting a reference to collection of arrays into …","Trait for casting a mutable reference to collection of …","Trait for casting a collection of arrays from a collection …","Trait for casting a collection of arrays into a collection …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","The error type returned when casting a boxed slice of …","The type of error returned when the capacity of a Vec didn…","Packs and unpacks color types with some component order.","Trait for casting a reference to collection of color …","Trait for casting a mutable reference to collection of …","Trait for casting a collection of color components into a …","Trait for casting a collection of color components from a …","The error for when try_components_as fails to cast.","The error for when try_components_as_mut fails to cast.","The error for when try_from_components fails to cast.","The error for when try_into_colors fails to cast.","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors into a collection …","Trait for casting a collection of colors into a collection …","Trait for casting a collection of colors into a collection …","The type of error returned when the length of a Vec didn’…","A color packed into a compact format, such as an unsigned …","The error type returned when casting a slice of components …","Trait for trying to cast a reference to collection of …","Trait for trying to cast a mutable reference to collection …","Trait for trying to cast a collection of color components …","Trait for trying to cast a collection of colors from a …","An unsigned integer with the same size as Self.","Marker trait for types that can be represented as an …","Trait for casting a reference to a collection of unsigned …","Trait for casting a mutable reference to a collection of …","Trait for casting a collection of unsigned integers from a …","Trait for casting a collection of unsigned integers into a …","The error type returned when casting a Vec of components …","The type of error that is returned when casting a Vec of …","","","","","","Cast this collection of arrays into a collection of colors.","Cast this collection of arrays into a mutable collection …","Cast a collection of colors into a collection of arrays.","","","","","","Cast this collection of arrays into a collection of colors.","","","","","","Cast this collection of colors into a collection of arrays.","Cast this collection of colors into a mutable collection …","Cast this collection of colors into a collection of color …","Cast this collection of colors into a mutable collection …","","","","","","","Cast this collection of colors into a collection of …","Cast this collection of colors into a mutable collection …","","","","","","","","","","","The channel order for the color components in the packed …","","","","","","","","","","","The color packed into a type P, such as u32 or [u8; 4].","Cast this collection of color components into a reference …","Cast this collection of color components into a mutable …","Cast a collection of colors into a collection of color …","","","","","","Cast this collection of color components into a collection …","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","Returns the argument unchanged.","","","","","","","Cast from an array to a color type.","Cast from an array of arrays to an array of colors.","Cast from a boxed array to a boxed color type.","Cast from a mutable array reference to a mutable color …","Cast from an array reference to a color type reference.","Cast from a slice of arrays to a slice of colors.","Cast from a boxed slice of arrays to a boxed slice of …","Cast from a mutable slice of arrays to a mutable slice of …","Cast from a Vec of arrays to a Vec of colors.","Cast a collection of arrays into an collection of colors.","Cast from an array of color components to an array of …","The same as try_from_component_slice but panics on error.","The same as try_from_component_slice_box but panics on …","The same as try_from_component_slice_mut but panics on …","The same as try_from_component_vec but panics on error.","Cast a collection of color components into an collection …","","","","","","Cast from an unsigned integer to a color type.","Cast from an array of unsigned integers to an array of …","Cast from a mutable unsigned integer reference to a …","Cast from an unsigned integer reference to a color type …","Cast from a slice of unsigned integers to a slice of …","Cast from a boxed slice of unsigned integers to a boxed …","Cast from a mutable slice of unsigned integers to a …","Cast from a Vec of unsigned integers to a Vec of colors.","Cast a collection of unsigned integers into an collection …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","Cast from a color type to an array.","Cast from an array of colors to an array of arrays.","Cast from a boxed color type to a boxed array.","Cast from a mutable color type reference to a mutable …","Cast from a color type reference to an array reference.","Cast from a slice of colors to a slice of arrays.","Cast from a boxed slice of colors to a boxed slice of …","Cast from a mutable slice of colors to a mutable slice of …","Cast from a Vec of colors to a Vec of arrays.","Cast this collection of colors into a collection of arrays.","","","","","","","","","","","Cast from an array of colors to an array of color …","Cast from a slice of colors to a slice of color components.","Cast from a boxed slice of colors to a boxed slice of …","Cast from a slice of colors to a slice of color components.","Cast from a Vec of colors to a Vec of color components.","Cast this collection of colors into a collection of color …","","","","","","Cast from a color type to an unsigned integer.","Cast from an array of colors to an array of unsigned …","Cast from a mutable color type reference to a mutable …","Cast from a color type reference to an unsigned integer …","Cast from a slice of colors to a slice of unsigned …","Cast from a boxed slice of colors to a boxed slice of …","Cast from a mutable slice of colors to a mutable slice of …","Cast from a Vec of colors to a Vec of unsigned integers.","Cast this collection of colors into a collection of …","The type of error that occurred.","Map values of color A to values of color B without …","Map values of color A to values of color B without …","Combine the components of a color into the packed format.","Transform a color value into a packed memory …","","","","","","","","","Try to cast this collection of color components into a …","Try to cast this collection of color components into a …","Try to cast this collection of color components into a …","","","","","","","","","","","","","Cast from a slice of color components to a slice of colors.","Cast from a boxed slice of color components to a boxed …","Cast from a mutable slice of color components to a slice …","Cast from a Vec of color components to a Vec of colors.","Try to cast a collection of color components into an …","","","","","","","","","","","","","","","","Cast this collection of unsigned integers into a …","Cast this collection of unsigned integers into a mutable …","Cast a collection of colors into a collection of unsigned …","","","","","","Cast this collection of unsigned integers into a …","","","","","","Split the packed color into its separate components.","Transform a packed color into a regular color value.","The original values.","The original values.","Trait to convert color from one reference white point to …","Trait to convert color with one reference white point into …","Bradford chromatic adaptation method","Holds the matrix coefficients for the chromatic adaptation …","Chromatic adaptation methods implemented in the library","Generates a conversion matrix to convert the Xyz …","VonKries chromatic adaptation method","XyzScaling chromatic adaptation method","Convert the source color to the destination color using …","Convert the source color to the destination color using …","Convert the source color to the destination color using …","Convert the source color to the destination color using …","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Generates a 3x3 transformation matrix to convert color …","Get the cone response functions for the chromatic …","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","3x3 matrix for the inverse of the cone response domains","3x3 matrix for the cone response domains","","","","","","","","","","","","","","","Calculate the CIEDE2000 ΔE* (Delta E) color difference …","A trait for calculating the color difference between two …","Calculate the ΔE color difference between two colors.","Calculate the distance between two colors as if they were …","Calculate a combination of Euclidean and …","Calculate the CIEDE2000 ΔE’ (improved IEDE2000 ΔE*) …","Calculate the ΔE’ (improved ΔE) color difference …","The type of the calculated color difference.","The type for the ΔE* (Delta E).","The type for the distance value.","The scalar type used for luminance and contrast.","The type for the distance value.","The type for the distance value.","Calculate and check the WCAG 2.1 relative contrast and …","Calculate the ΔE color difference metric for self and …","Calculate the CIEDE2000 ΔE* (Delta E) color difference …","Calculate the Euclidean distance from self to other.","Calculate the squared Euclidean distance from self to other…","Return the difference or distance between two colors.","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3. …","Calculate the hybrid distance between self and other.","Calculate the ΔE’ (improved ΔE) color difference …","Calculate the CIEDE2000 ΔE’ (improved IEDE2000 ΔE*) …","Returns the WCAG 2.1 relative luminance contrast between …","Returns the WCAG 2.1 relative luminance of self.","A trait for converting one color from another, in a …","Temporarily convert colors in place.","A scope guard that restores the guarded colors to their …","A trait for unchecked conversion of one color from another.","","Temporarily convert colors in place, without clamping.","A scope guard that restores the guarded colors to their …","A trait for converting a color into another, in a possibly …","Temporarily convert colors in place. The Into counterpart …","A trait for unchecked conversion of a color into another.","Temporarily convert colors in place. The Into counterpart …","The error type for a color conversion that converted a …","A trait for fallible conversion of one color from another.","A trait for fallible conversion of a color into another.","","","","","","","","","","","","","","","","Consume this error and return the wrapped color","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Convert from T with values clamped to the color defined …","Temporarily convert from another color type in place.","Convert from T. The resulting color might be invalid in …","Temporarily convert from another color type in place, …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","Replace this guard with a guard that clamps the colors …","Convert into T with values clamped to the color defined …","","","","Temporarily convert to another color type in place.","Convert into T. The resulting color might be invalid in …","","","","Temporarily convert to another color type in place, …","","","","Replace this guard with a guard that does not clamp the …","Immediately restore the colors to their original type.","Immediately restore the colors to their original type.","Convert the colors to another type and replace this guard.","Convert the colors to another type and replace this guard.","Convert the colors to another type, without clamping, and …","Convert the colors to another type, without clamping, and …","","","","","","","","Convert from T, returning ok if the color is inside of its …","","","","Convert into T, returning ok if the color is inside of its …","","","","","","","","","","","","","","A transfer function from linear space.","","A transfer function to linear space.","","","Convert the color component linear from linear space.","Gamma encoding.","Convert the color component encoded into linear space.","Linear encoding","The sRGB standard.","Represents 2.2f64.","Gamma encoding.","The transfer function for gamma encoded colors.","A type level float constant.","The represented number.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A generic standard with linear components.","Linear color component encoding.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","The sRGB standard, color space, and transfer function.","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","HSL color space.","Linear HSL with an alpha component. See the Hsla …","An iterator for Hsl values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, lightness) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, lightness) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Decides how light the color will look. 0.0 will be black, …","Return the lightness value maximum.","Return the saturation value maximum.","Return the lightness value minimum.","Return the saturation value minimum.","Create an HSL color.","Create an HSL color. This is the same as Hsl::new without …","Create an sRGB HSL color. This method can be used instead …","Create an sRGB HSL color. This is the same as Hsl::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color. 0.0 gives gray scale colors …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","Create a struct of vectors with a minimum capacity. See …","HSLuv color space.","HSLuv with an alpha component. See the Hsluva …","An iterator for Hsluv values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, l) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, l) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","Decides how light the color will look. 0.0 will be black, …","","Return the l value maximum.","Return the saturation value maximum.","Return the l value minimum.","Return the saturation value minimum.","Create an HSLuv color.","Create an HSLuv color. This is the same as Hsluv::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color, as a percentage of the …","Update this color with new values.","","","","","","","","","The white point and RGB primaries this color is adapted …","Create a struct of vectors with a minimum capacity. See …","HSV color space.","Linear HSV with an alpha component. See the Hsva …","An iterator for Hsv values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, value) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, value) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the saturation value maximum.","Return the value value maximum.","Return the saturation value minimum.","Return the value value minimum.","Create an HSV color.","Create an HSV color. This is the same as Hsv::new without …","Create an sRGB HSV color. This method can be used instead …","Create an sRGB HSV color. This is the same as Hsv::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color. 0.0 gives gray scale colors …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","Decides how bright the color will look. 0.0 will be black, …","Create a struct of vectors with a minimum capacity. See …","A hue type for the CIE L*a*b* family of color spaces.","Iterator over LabHue values.","A hue type for the CIE L*u*v* family of color spaces.","Iterator over LuvHue values.","A hue type for the Oklab color space.","Iterator over OklabHue values.","A hue type for the RGB family of color spaces.","Iterator over RgbHue values.","","","","","","","","","","","","","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","","","","","","","","","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","","","","","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","","","","","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Convert from another angle type.","Convert from another angle type.","Convert from another angle type.","Convert from another angle type.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","","","","","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","","","","","","","","","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Convert into another angle type.","Convert into another angle type.","Convert into another angle type.","Convert into another angle type.","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","","","","","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","","","","","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","","","","","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","","","","","","","","","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Update this hue with a new value.","Update this hue with a new value.","Update this hue with a new value.","Update this hue with a new value.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","HWB color space.","Linear HWB with an alpha component. See the Hwba …","An iterator for Hwb values.","","","","Borrow this color’s components as shared references.","The blackness of the color. It specifies the amount black …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, whiteness, blackness) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, whiteness, blackness) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the blackness value maximum.","Return the whiteness value maximum.","Return the blackness value minimum.","Return the whiteness value minimum.","Create an HWB color.","Create an HWB color. This is the same as Hwb::new without …","Create an sRGB HWB color. This method can be used instead …","Create an sRGB HWB color. This is the same as Hwb::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","The whiteness of the color. It specifies the amount white …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lab values.","The CIE L*a*b* (CIELAB) color space.","CIE L*a*b* (CIELAB) with an alpha component. See the Laba …","a* goes from red at -128 to green at 127.","","","","Borrow this color’s components as shared references.","b* goes from yellow at -128 to blue at 127.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, a\\\\*, b\\\\*) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L\\\\*, a\\\\*, b\\\\*) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the a value maximum.","Return the b value maximum.","Return the l value maximum.","Return the a value minimum.","Return the b value minimum.","Return the l value minimum.","Create a CIE L*a*b* color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lch values.","CIE L*C*h°, a polar version of CIE L*a*b*.","CIE L*C*h° with an alpha component. See the Lcha …","","","","Borrow this color’s components as shared references.","","","C* is the colorfulness of the color. It’s similar to …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, C\\\\*, h°) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (L\\\\*, C\\\\*, h°) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the chroma value maximum. This value does not cover …","Return the chroma extended maximum value. This value …","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create a CIE L*C*h° color.","Create a CIE L*C*h° color. This is the same as Lch::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lchuv values.","CIE L*C*uv h°uv, a polar version of CIE L*u*v*.","CIE L*C*uv h°uv with an alpha component. See the Lchuva …","","","","Borrow this color’s components as shared references.","","","C*uv is the colorfulness of the color. It’s similar to …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, C\\\\*uv, h°uv) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (L\\\\*, C\\\\*uv, h°uv) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the chroma value maximum.","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create a CIE L*C*uv h°uv color.","Create a CIE L*C*uv h°uv color. This is the same as …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Gamma 2.2 encoded luminance.","Gamma 2.2 encoded luminance with an alpha component.","An iterator for Luma values.","Linear luminance.","Linear luminance with an alpha component.","Luminance.","A white point and a transfer function.","Luminance with an alpha component. See the Lumaa …","A packed representation of Luma+Alpha in AL order.","A packed representation of Luma+Alpha in LA order.","sRGB encoded luminance.","sRGB encoded luminance with an alpha component.","The transfer function for the luminance component.","The white point of the color space.","","","","","","","","","","","","","","","","","","","","Borrow this color’s components as shared references.","","","","","","","Channel orders for packed Luma types.","","","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","Return an iterator that moves colors out of the specified …","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","Convert from a (luma,) tuple.","Convert from linear luminance from a different encoding.","Convert from another component type.","","Convert linear luminance to non-linear luminance.","","","Convert from a packed u16 with a specific component order.","Convert from a packed u16 with specifiable component order.","Get a color, or slice of colors, with references to the …","","Get a color, or slice of colors, that allows modifying the …","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Convert to a (luma,) tuple.","Convert a linear color to a different encoding.","Convert into another component type.","","","","","Convert the color to linear luminance.","","","Convert to a packed u16 with with a specific component …","Convert to a packed u16 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","The lightness of the color. 0.0 is black and 1.0 is white.","Return the luma value maximum.","Return the luma value minimum.","","","","","","","Create a luminance color.","","","","","","Pop a color’s components from the component vectors. See …","","Push an additional color’s components onto the component …","","","","","","","","Update this color with new values.","","","The kind of RGB standard. sRGB is the default.","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","","","Luma+Alpha color packed in AL order.","Luma+Alpha color packed in LA order.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An iterator for Luv values.","The CIE L*u*v* (CIELUV) color space.","CIE L*u*v* (CIELUV) with an alpha component. See the Luva …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, u\\\\*, v\\\\*) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L\\\\*, u\\\\*, v\\\\*) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the l value maximum.","Return the u value maximum.","Return the v value maximum.","Return the l value minimum.","Return the u value minimum.","Return the v value minimum.","Create a CIE L*u*v* color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","The range of valid u* varies depending on the values of L* …","","","The range of valid v* varies depending on the values of L* …","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get a SVG/CSS3 color by name. Can be toggled with the …","Method for getting the absolute value of a number.","A helper trait that collects arithmetic traits under one …","Method for getting the cube root of a number.","Trait for clamping a value.","Assigning trait for clamping a value.","Methods for calculating e ^ x,","Trait for creating a vectorized value from a scalar value.","Conversion from an array of scalars to a vectorized value.","Methods for calculating the lengths of a hypotenuse.","Conversion from a vectorized value to an array of scalars.","Methods for checking if a number can be used as a divisor.","Methods for getting the largest or smallest of two values.","Combined multiplication and addition operation.","Combined multiplication and subtraction operation.","Methods for the value 1.","The resulting type.","The resulting type.","Trait for lanewise comparison of two values.","Method for raising a number by a real number exponent.","Method for raising a number by a signed integer exponent.","Method for raising a number by a n unsigned integer …","Numbers that belong to the real number set. It’s both a …","Method for calculating 1 / x.","Methods for rounding numbers to integers.","Saturating addition operation.","Saturating subtraction operation.","The scalar type that is stored in each lane of Self. …","Method for getting the square root of a number.","Trigonometry methods and their inverses.","Methods for the value 0.","Returns the absolute value of self.","Compute the arccosine in radians of self.","Compute the arcsine in radians of self.","Compute the arctangent in radians of self.","Compute the arctangent in radians of self (y) and other …","Returns the cube root of self.","Return the smallest integer greater than or equal to self.","Clamp self to be within the range [min, max].","Clamp self to be within the range [min, max].","Clamp self to be within the range (-∞, max].","Clamp self to be within the range (-∞, max].","Clamp self to be within the range [min, ∞).","Clamp self to be within the range [min, ∞).","Compute the cosine of self (in radians).","Compares self == other.","Return e ^ self.","Return the largest integer less than or equal to self.","Creates a vectorized value from an array of scalars.","Create a number from an f64 value, mainly for converting …","Create a new vectorized value where each lane is scalar. …","Compares self > other.","Compares self >= other.","Returns the length of the hypotenuse formed by self and …","Creates an array of scalars from a vectorized value.","Return true if self can be used as a divisor in x / self.","Compares self < other.","Compares self <= other.","Return the largest of self and other.","Return the smallest of self and other.","Return a pair of self and other, where the smallest is the …","Multiplies self with m and add a, as in (self * m) + a.","Multiplies self with m and subtract s, as in (self * m) - s…","Compares self != other.","Create a new 1 value.","Return self raised to the power of exp.","Return self raised to the power of exp.","Return self raised to the power of exp.","Return 1 / self.","Return the nearest integer to self. Round half-way cases …","Returns the sum of self and other, but saturates instead …","Returns the difference of self and other, but saturates …","Compute the sine of self (in radians).","Simultaneously compute the sine and cosine of self (in …","Returns the square root of self.","Compute the tangent of self (in radians).","Create a new 0 value.","An iterator for Okhsl values.","A Hue/Saturation/Lightness representation of Oklab in the …","Okhsl with an alpha component.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, s, l) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, s, l) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","The relative luminance of the color, where","Return the lightness value maximum.","Return the saturation value maximum.","Return the lightness value minimum.","Return the saturation value minimum.","Create an Okhsl color.","Create an Okhsl color. This is the same as Okhsl::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The saturation (freedom of black or white) of the color.","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","An iterator for Okhsv values.","A Hue/Saturation/Value representation of Oklab in the sRGB …","Okhsv with an alpha component. See the Okhsva …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, s, v) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, s, v) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the saturation value maximum.","Return the value value maximum.","Return the saturation value minimum.","Return the value value minimum.","Create an Okhsv color.","Create an Okhsv color. This is the same as Okhsv::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The saturation (freedom of whitishness) of the color.","Update this color with new values.","","","","","","","","","The monochromatic brightness of the color.","Create a struct of vectors with a minimum capacity. See …","An iterator for Okhwb values.","A Hue/Whiteness/Blackness representation of Oklab in the …","Okhwb with an alpha component. See the Okhwba …","","","","Borrow this color’s components as shared references.","The amount of black, mixed in the pure hue, ranging from …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, w, b) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, w, b) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the blackness value maximum.","Return the whiteness value maximum.","Return the blackness value minimum.","Return the whiteness value minimum.","Create an Okhwb color.","Create an Okhwb color. This is the same as Okhwb::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The amount of white, mixed in the pure hue, ranging from …","Create a struct of vectors with a minimum capacity. See …","An iterator for Oklab values.","The Oklab color space.","Oklab with an alpha component.","a changes the hue from reddish to greenish, when moving …","","","","Borrow this color’s components as shared references.","b changes the hue from yellowish to blueish, when moving …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L, a, b) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L, a, b) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","l is the lightness of the color. 0 gives absolute black …","","Return the l value maximum.","Return the l value minimum.","Create an Oklab color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","An iterator for Oklch values.","Oklch, a polar version of Oklab.","Oklch with an alpha component. See the Oklcha …","","","","Borrow this color’s components as shared references.","","","chroma is the colorfulness of the color. A color with …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L, C, h) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","h is the hue of the color, in degrees. Decides if it’s …","Calls U::from(self).","","","","Convert to a (L, C, h) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L is the lightness of the color. 0 gives absolute black …","","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create an Oklch color.","Create an Oklch color. This is the same as Oklch::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","Error type for parsing a string of hexadecimal characters …","Gamma 2.2 encoded sRGB.","Gamma 2.2 encoded sRGB with an alpha component.","The hex value was not in a valid 3 or 6 character format.","An iterator for Rgb values.","Linear sRGB.","Linear sRGB with an alpha component.","A packed representation of RGBA in ABGR order.","A packed representation of RGBA in ARGB order.","A packed representation of RGBA in BGRA order.","A packed representation of RGBA in RGBA order.","An error occurred while parsing the string into a valid …","Represents the red, green and blue primaries of an RGB …","The primaries of the RGB color space.","Generic RGB.","A set of primaries and a white point.","An RGB space and a transfer function.","Generic RGB with an alpha component. See the Rgba …","The hex value was not in a valid 4 or 8 character format.","The RGB color space.","Non-linear sRGB, the most common RGB input/output format.","Non-linear sRGB with an alpha component.","The transfer function for the color components.","The white point of the RGB color space.","","","","","","","","","","","","","","","","","","","","","Borrow this color’s components as shared references.","","","Primary blue.","The amount of blue light, where 0.0 is no blue light and …","","","","","","","Channel orders for packed RGBA types.","","","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","Return an iterator that moves colors out of the specified …","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","Convert from a (red, green, blue) tuple.","Convert linear RGB from a different encoding.","Convert the RGB components from another number type.","","Convert linear RGB to non-linear RGB.","","","","Parses a color hex code of format ‘#ff00bbff’ or ‘…","Parses a color hex code of format ‘#ff00bb’ or ‘#abc…","Convert from a packed u32 with specifiable component order.","Convert from a packed u32 with specifiable component order.","Get a color, or slice of colors, with references to the …","","","Get a color, or slice of colors, that allows modifying the …","Primary green.","The amount of green light, where 0.0 is no green light and …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Convert to a (red, green, blue) tuple.","Convert a linear color to a different encoding.","Convert the RGB components into another number type.","","","","","Convert the color to linear RGB.","","","","Convert to a packed u32 with with specifiable component …","Convert to a packed u32 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","Return the blue value maximum.","Return the green value maximum.","Return the red value maximum.","Return the blue value minimum.","Return the green value minimum.","Return the red value minimum.","","","","","","","Create an RGB color.","","","","","","Pop a color’s components from the component vectors. See …","","Push an additional color’s components onto the component …","Primary red.","The amount of red light, where 0.0 is no red light and 1.0 …","","","","Get a pre-defined matrix for converting an RGB value with …","","","","","Update this color with new values.","","","","The kind of RGB standard. sRGB is the default.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","","","Get a pre-defined matrix for converting an XYZ value into …","RGBA color packed in ABGR order.","RGBA color packed in ARGB order.","RGBA color packed in BGRA order.","RGBA color packed in RGBA order.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Converts from a stimulus color component type, while …","Converts into a stimulus color component type, while …","Color components that represent a stimulus intensity.","A marker trait for colors where all components are stimuli.","Converts other into Self, while performing the appropriate …","Converts self into T, while performing the appropriate …","The highest displayable value this component type can …","CIE standard illuminant A","Represents an unspecified reference white point.","CIE standard illuminant B","CIE standard illuminant C","CIE D series standard illuminant - D50","CIE D series standard illuminant - D50","CIE D series standard illuminant - D55","CIE D series standard illuminant - D55","CIE D series standard illuminant - D65","CIE D series standard illuminant - D65","CIE D series standard illuminant - D75","CIE D series standard illuminant - D75","CIE standard illuminant E","CIE fluorescent illuminant series - F11","CIE fluorescent illuminant series - F2","CIE fluorescent illuminant series - F7","WhitePoint defines the Xyz color co-ordinates for a given …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the Xyz chromaticity co-ordinates for the white point.","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An iterator for Xyz values.","The CIE 1931 XYZ color space.","CIE 1931 XYZ with an alpha component. See the Xyza …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (X, Y, Z) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (X, Y, Z) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the x value maximum.","Return the y value maximum.","Return the z value maximum.","Return the x value minimum.","Return the y value minimum.","Return the z value minimum.","Create a CIE XYZ color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Changes the reference white point without changing the …","X is the scale of what can be seen as a response curve for …","Y is the luminance of the color, where 0.0 is black and …","Z is the scale of what can be seen as the blue …","An iterator for Yxy values.","The CIE 1931 Yxy (xyY) color space.","CIE 1931 Yxy (xyY) with an alpha component. See the Yxya …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","luma (Y) was a measure of the brightness or luminance of a …","Return the luma value maximum.","Return the x value maximum.","Return the y value maximum.","Return the luma value minimum.","Return the x value minimum.","Return the y value minimum.","Create a CIE Yxy color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Changes the reference white point without changing the …","x chromaticity co-ordinate derived from XYZ color space as …","y chromaticity co-ordinate derived from XYZ color space as …"],"i":[0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,0,0,0,0,0,219,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,143,144,141,142,222,223,150,151,147,148,224,225,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,17,24,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,0,73,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,4,4,5,5,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,17,20,24,26,27,17,24,16,23,0,17,20,24,26,27,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,18,19,25,0,100,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,101,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,73,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,0,222,223,222,223,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,18,224,225,224,225,17,18,17,20,24,26,27,17,17,20,20,24,24,26,26,27,27,17,17,20,20,24,24,26,26,27,27,0,2,4,5,12,12,13,13,14,14,15,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,60,63,63,59,61,61,2,2,2,2,2,2,4,4,4,4,4,4,5,5,5,5,5,5,12,12,12,13,13,13,14,14,14,15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,19,19,19,19,19,19,20,20,20,20,20,20,20,21,21,21,21,21,22,22,22,22,22,22,23,23,23,23,23,24,24,24,24,24,24,24,25,25,25,25,25,25,26,26,26,26,26,26,26,27,27,27,27,27,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,18,221,2,4,5,16,17,18,19,20,21,23,24,25,26,27,137,2,4,5,16,17,18,19,20,21,22,23,24,25,221,221,221,221,221,221,221,221,221,221,0,0,0,2,4,5,16,18,19,21,22,23,25,0,0,17,20,24,17,18,17,20,24,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,4,4,4,5,5,5,12,12,12,13,13,13,14,14,14,15,15,15,16,16,16,17,17,17,18,18,18,19,19,19,20,20,20,21,21,21,22,22,22,23,23,23,24,24,24,25,25,25,26,26,26,27,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,139,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,4,17,18,19,20,24,25,0,0,0,141,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,142,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,141,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,142,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,21,0,27,0,143,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,144,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,17,17,20,20,24,24,26,26,27,27,17,17,20,20,24,24,26,26,27,27,0,0,0,0,0,0,0,127,17,20,24,26,27,17,20,24,26,27,17,20,24,26,27,17,20,24,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,147,2,4,5,18,19,21,22,148,2,4,5,18,19,21,22,147,2,4,5,18,19,21,22,148,2,4,5,18,19,21,22,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,4,5,21,22,149,2,4,5,16,18,19,21,22,23,25,150,2,4,5,16,18,19,21,22,23,25,151,2,4,5,16,18,19,21,22,23,25,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,5,16,0,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,127,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,4,4,4,5,5,5,12,13,14,15,16,16,16,17,17,17,18,18,18,19,19,19,20,20,20,21,21,21,22,22,22,23,23,23,24,24,24,25,25,25,26,26,26,27,27,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,20,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,20,24,26,27,20,5,22,0,4,17,18,19,20,26,27,16,23,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,152,2,4,5,16,18,19,21,22,23,25,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,26,27,17,20,24,26,27,0,26,27,0,26,0,127,0,0,0,127,73,73,104,73,73,73,73,73,73,104,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,104,73,104,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,73,73,73,73,104,73,73,73,73,73,73,104,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,104,127,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,104,73,127,73,73,73,73,73,73,127,104,73,104,73,73,73,73,104,73,104,73,104,73,104,73,104,73,73,127,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,127,73,73,0,0,0,0,0,0,0,0,9,6,130,226,227,228,7,191,6,155,0,0,0,229,0,157,157,0,0,155,155,157,157,157,157,157,0,0,0,0,155,97,157,157,155,157,66,154,155,156,157,66,66,66,66,66,66,66,66,154,154,33,154,154,155,156,157,66,154,155,156,157,66,66,66,66,66,230,66,229,66,154,155,156,157,66,154,155,156,157,66,231,66,154,155,156,157,66,154,155,156,157,66,66,154,154,154,155,156,157,66,231,66,66,66,66,66,66,66,156,231,66,66,66,66,66,66,66,231,66,154,155,156,157,66,154,155,156,157,66,231,66,154,155,156,157,66,154,155,156,157,66,66,66,66,66,66,66,66,66,66,66,66,66,66,154,155,156,157,66,154,154,154,155,156,157,66,231,66,230,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,231,66,66,66,66,66,66,66,66,66,231,66,66,66,230,66,230,66,231,66,230,66,97,66,231,66,231,66,156,66,66,66,66,66,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,66,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,66,97,66,230,66,0,0,0,0,82,0,232,232,232,233,234,99,0,0,0,0,0,0,0,0,0,0,0,0,0,163,0,0,0,0,0,235,236,237,238,0,0,0,0,0,0,163,0,0,0,0,0,0,168,0,0,0,0,0,0,0,160,161,162,163,159,239,240,241,160,161,162,163,159,242,160,161,162,163,159,243,244,245,246,159,159,159,159,159,159,247,248,160,161,162,163,159,160,161,162,163,159,159,160,161,162,163,159,160,161,162,163,159,159,249,250,251,160,161,162,163,159,252,160,161,162,163,159,160,161,162,163,159,160,160,161,161,162,162,163,159,160,161,162,163,159,159,159,159,159,159,159,159,159,159,159,160,161,162,163,159,0,0,0,0,0,0,0,0,0,253,0,0,0,0,0,254,160,161,162,163,159,0,0,0,0,0,0,0,0,255,160,161,162,163,159,160,161,162,163,159,0,0,0,0,0,0,0,0,0,256,160,161,162,163,159,160,161,162,163,159,0,0,0,0,0,257,160,161,162,163,159,0,0,0,0,0,0,0,0,258,162,0,0,165,159,160,161,162,163,159,160,161,162,235,236,238,160,161,162,163,159,160,161,162,163,159,159,159,0,0,0,0,237,160,161,162,163,159,160,161,162,163,159,160,161,162,163,159,259,260,261,160,161,162,163,159,262,160,161,162,163,159,165,159,161,162,0,0,174,0,0,0,174,174,263,263,264,264,174,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,28,28,174,174,173,174,173,174,173,174,173,174,173,173,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,0,0,0,0,0,0,0,265,266,267,268,269,270,0,270,266,267,267,265,268,268,268,268,268,269,271,272,268,268,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,86,94,68,86,94,68,86,94,68,86,94,68,86,94,94,68,86,94,68,86,68,86,94,68,86,94,94,68,86,94,68,86,94,273,176,274,178,68,86,94,68,86,94,68,86,94,86,275,68,86,94,276,72,68,86,94,277,68,86,94,68,68,86,68,86,68,86,94,68,86,94,68,86,94,278,68,86,94,279,68,86,94,68,86,94,68,86,94,68,86,94,0,0,0,0,0,0,280,0,281,0,0,0,0,0,0,180,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,182,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,182,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,0,0,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,184,128,184,128,184,128,184,128,184,128,184,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,0,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,0,0,0,114,114,114,2,114,114,2,2,2,114,2,2,114,2,114,114,2,2,114,2,2,2,114,114,114,114,2,2,114,114,2,2,114,2,2,2,2,2,2,2,2,2,114,114,2,2,2,2,114,2,114,114,114,114,114,114,114,2,0,0,0,117,117,117,4,117,117,4,4,4,117,4,4,117,4,117,117,4,117,4,4,4,117,117,117,117,4,117,117,4,4,4,117,4,4,4,4,4,4,117,117,4,4,4,4,117,117,117,117,117,117,117,117,4,4,0,0,0,113,113,113,5,113,113,5,5,5,113,5,5,113,5,113,113,5,5,113,5,5,5,113,113,113,113,5,5,113,113,5,5,113,5,5,5,5,5,5,5,5,113,113,5,5,5,5,113,5,113,113,113,113,113,113,113,5,5,0,0,0,0,0,0,0,0,187,188,189,190,187,188,189,190,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,12,13,13,14,14,15,15,187,188,189,190,12,12,13,13,14,14,15,15,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,12,13,14,15,0,0,0,109,109,109,16,16,109,109,16,16,16,109,16,16,109,16,109,109,16,16,109,16,16,16,109,109,109,109,16,16,109,109,16,16,109,16,16,16,16,16,16,16,16,109,109,16,16,16,109,16,109,109,109,109,109,109,109,16,16,0,0,0,17,123,123,123,17,17,123,123,17,17,17,123,17,17,123,17,123,123,17,123,17,17,123,123,123,123,17,123,123,17,17,17,123,17,17,17,17,17,17,17,123,123,17,17,17,123,123,123,123,123,123,123,123,17,17,0,0,0,111,111,111,18,111,111,18,18,18,18,111,18,18,111,18,111,111,18,111,18,18,18,111,111,111,111,18,111,111,18,18,18,111,18,18,18,18,18,18,18,111,111,18,18,18,111,111,111,111,111,111,111,111,18,18,0,0,0,110,110,110,19,110,110,19,19,19,19,110,19,19,110,19,110,110,19,110,19,19,19,110,110,110,110,19,110,110,19,19,19,110,19,19,19,19,19,19,110,110,19,19,19,110,110,110,110,110,110,110,110,19,19,0,0,0,0,0,0,0,0,0,0,0,0,74,74,75,75,75,75,124,75,75,75,75,75,124,75,124,75,75,75,75,75,75,75,75,75,75,124,75,124,0,75,75,75,75,75,75,75,75,124,75,75,124,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,166,166,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,124,75,124,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,124,166,75,75,75,75,75,75,124,75,124,75,124,75,75,124,75,75,75,75,75,75,75,124,75,75,124,166,75,75,75,75,124,75,75,75,75,75,75,75,75,75,75,75,75,75,75,124,124,75,75,75,75,75,75,75,75,75,75,75,75,75,75,124,75,75,75,75,75,75,75,75,124,75,75,75,124,75,75,124,75,124,75,124,75,124,75,124,75,75,75,75,75,75,75,0,0,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,194,195,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,194,195,195,0,0,0,121,121,121,20,121,121,20,20,20,121,20,20,121,20,121,121,20,121,20,20,121,121,121,121,20,121,121,20,20,20,121,20,20,20,20,20,20,20,121,121,20,20,20,121,121,121,121,121,121,20,121,121,20,20,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,92,0,0,0,0,0,0,0,0,0,85,0,0,0,49,48,48,48,48,78,199,34,42,34,42,34,42,48,38,47,199,64,36,85,38,38,50,282,70,38,38,67,67,67,186,185,38,37,79,46,283,80,199,91,92,48,48,45,48,8,0,0,0,122,122,122,21,122,122,21,21,21,122,21,21,122,21,122,122,21,21,122,21,21,21,122,122,122,122,21,21,122,122,21,21,122,21,21,21,21,21,21,21,122,122,21,21,21,21,122,122,122,122,122,122,122,122,21,0,0,0,116,116,116,22,116,116,22,22,22,116,22,22,116,22,116,116,22,116,22,22,22,116,116,116,116,22,22,116,116,22,22,116,22,22,22,22,22,22,116,116,22,22,22,22,116,116,116,116,116,116,116,116,22,22,0,0,0,115,115,115,23,23,115,115,23,23,23,115,23,23,115,23,115,115,23,115,23,23,23,115,115,115,115,23,23,115,115,23,23,115,23,23,23,23,23,23,115,115,23,23,23,115,115,115,115,115,115,115,115,23,23,0,0,0,24,120,120,120,24,24,120,120,24,24,24,120,24,24,120,24,120,120,24,120,24,24,120,120,120,120,24,120,120,24,24,24,120,24,24,24,120,120,24,24,24,120,120,120,120,120,120,120,120,24,0,0,0,119,119,119,25,119,119,25,25,25,25,119,25,25,119,25,119,119,25,119,25,25,25,119,119,119,119,25,119,119,25,25,25,119,25,25,25,25,25,119,119,25,25,25,119,119,119,119,119,119,119,119,25,0,0,0,197,0,0,0,0,0,0,0,197,0,129,0,0,0,0,197,71,0,0,71,129,69,69,69,69,118,197,69,69,69,69,69,118,197,69,118,197,69,69,69,69,69,69,69,284,69,69,118,197,69,118,197,0,69,69,69,69,69,69,69,69,118,197,69,69,118,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,197,197,164,164,69,69,69,69,69,69,69,69,69,118,197,197,197,69,118,197,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,118,197,164,69,164,69,69,69,69,69,284,69,69,69,118,197,69,118,197,69,118,197,69,69,118,197,69,69,69,69,69,69,69,118,69,69,118,197,164,69,69,69,69,118,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,118,118,69,69,69,69,69,69,284,69,69,69,69,129,69,69,69,69,69,118,197,69,69,69,69,69,69,69,197,69,118,197,69,69,69,118,197,69,69,118,197,69,118,197,69,118,197,69,118,197,69,118,197,69,69,69,69,69,69,69,129,0,0,0,0,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,201,202,202,203,203,204,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,201,202,202,203,203,204,204,0,0,0,0,62,285,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,41,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,0,0,0,108,108,108,26,108,108,26,26,26,108,26,26,108,26,108,108,26,108,26,26,108,108,108,108,26,108,108,26,26,108,26,26,26,26,26,26,26,108,108,26,26,26,108,108,108,108,108,108,108,108,26,26,26,26,26,26,0,0,0,112,112,112,27,112,112,27,27,27,112,27,27,112,27,112,112,27,112,27,27,112,112,112,112,27,112,112,27,27,112,27,27,27,27,27,27,27,27,112,112,27,27,27,112,112,112,112,112,112,112,112,27,27,27,27,27],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[2,[1]],[2,[1]]],3],[[[4,[1]],[4,[1]]],3],[[[5,[1]],[5,[1]]],3],[[[12,[[0,[6,7,8,9,10,1,11]]]],[12,[[0,[6,7,8,9,10,1,11]]]]],3],[[[13,[[0,[6,7,8,9,10,1,11]]]],[13,[[0,[6,7,8,9,10,1,11]]]]],3],[[[14,[[0,[6,7,8,9,10,1,11]]]],[14,[[0,[6,7,8,9,10,1,11]]]]],3],[[[15,[[0,[6,7,8,9,10,1,11]]]],[15,[[0,[6,7,8,9,10,1,11]]]]],3],[[[16,[1]],[16,[1]]],3],[[[17,[1]],[17,[1]]],3],[[[18,[1]],[18,[1]]],3],[[[19,[1]],[19,[1]]],3],[[[20,[1]],[20,[1]]],3],[[[21,[1]],[21,[1]]],3],[[[22,[1]],[22,[1]]],3],[[[23,[1]],[23,[1]]],3],[[[24,[1]],[24,[1]]],3],[[[25,[1]],[25,[1]]],3],[[[26,[1]],[26,[1]]],3],[[[27,[1]],[27,[1]]],3],[[[2,[1]],[2,[1]]],3],[[[4,[1]],[4,[1]]],3],[[[5,[1]],[5,[1]]],3],[[[12,[[0,[6,7,8,9,10,1,11]]]],[12,[[0,[6,7,8,9,10,1,11]]]]],3],[[[13,[[0,[6,7,8,9,10,1,11]]]],[13,[[0,[6,7,8,9,10,1,11]]]]],3],[[[14,[[0,[6,7,8,9,10,1,11]]]],[14,[[0,[6,7,8,9,10,1,11]]]]],3],[[[15,[[0,[6,7,8,9,10,1,11]]]],[15,[[0,[6,7,8,9,10,1,11]]]]],3],[[[16,[1]],[16,[1]]],3],[[[17,[1]],[17,[1]]],3],[[[18,[1]],[18,[1]]],3],[[[19,[1]],[19,[1]]],3],[[[20,[1]],[20,[1]]],3],[[[21,[1]],[21,[1]]],3],[[[22,[1]],[22,[1]]],3],[[[23,[1]],[23,[1]]],3],[[[24,[1]],[24,[1]]],3],[[[25,[1]],[25,[1]]],3],[[[26,[1]],[26,[1]]],3],[[[27,[1]],[27,[1]]],3],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[[[2,[29]],[2,[29]]]],[[[2,[[0,[29,11]]]],[0,[29,11]]]],[[[4,[29]],[4,[29]]]],[[[4,[[0,[29,11]]]],[0,[29,11]]]],[[[5,[29]],[5,[29]]]],[[[5,[[0,[29,11]]]],[0,[29,11]]]],[[[12,[29]],[12,[29]]],[[12,[29]]]],[[[12,[29]],29],[[12,[29]]]],[[[13,[29]],29],[[13,[29]]]],[[[13,[29]],[13,[29]]],[[13,[29]]]],[[[14,[29]],29],[[14,[29]]]],[[[14,[29]],[14,[29]]],[[14,[29]]]],[[[15,[29]],29],[[15,[29]]]],[[[15,[29]],[15,[29]]],[[15,[29]]]],[[[16,[[0,[29,11]]]],[0,[29,11]]]],[[[16,[29]],[16,[29]]]],[[[17,[[0,[29,11]]]],[0,[29,11]]]],[[[17,[29]],[17,[29]]]],[[[18,[29]],[18,[29]]]],[[[18,[[0,[29,11]]]],[0,[29,11]]]],[[[19,[[0,[29,11]]]],[0,[29,11]]]],[[[19,[29]],[19,[29]]]],[[[20,[29]],[20,[29]]]],[[[20,[[0,[29,11]]]],[0,[29,11]]]],[[[21,[[0,[29,11]]]],[0,[29,11]]]],[[[21,[29]],[21,[29]]]],[[[22,[[0,[29,11]]]],[0,[29,11]]]],[[[22,[29]],[22,[29]]]],[[[23,[[0,[29,11]]]],[0,[29,11]]]],[[[23,[29]],[23,[29]]]],[[[24,[29]],[24,[29]]]],[[[24,[[0,[29,11]]]],[0,[29,11]]]],[[[25,[[0,[29,11]]]],[0,[29,11]]]],[[[25,[29]],[25,[29]]]],[[[26,[29]],[26,[29]]]],[[[26,[[0,[29,11]]]],[0,[29,11]]]],[[[27,[[0,[29,11]]]],[0,[29,11]]]],[[[27,[29]],[27,[29]]]],[[[2,[[0,[30,11]]]],[0,[30,11]]]],[[[2,[30]],[2,[30]]]],[[[4,[[0,[30,11]]]],[0,[30,11]]]],[[[4,[30]],[4,[30]]]],[[[5,[30]],[5,[30]]]],[[[5,[[0,[30,11]]]],[0,[30,11]]]],[[[12,[30]],[12,[30]]]],[[[12,[30]],30]],[[[13,[30]],30]],[[[13,[30]],[13,[30]]]],[[[14,[30]],30]],[[[14,[30]],[14,[30]]]],[[[15,[30]],30]],[[[15,[30]],[15,[30]]]],[[[16,[30]],[16,[30]]]],[[[16,[[0,[30,11]]]],[0,[30,11]]]],[[[17,[[0,[30,11]]]],[0,[30,11]]]],[[[17,[30]],[17,[30]]]],[[[18,[30]],[18,[30]]]],[[[18,[[0,[30,11]]]],[0,[30,11]]]],[[[19,[30]],[19,[30]]]],[[[19,[[0,[30,11]]]],[0,[30,11]]]],[[[20,[[0,[30,11]]]],[0,[30,11]]]],[[[20,[30]],[20,[30]]]],[[[21,[[0,[30,11]]]],[0,[30,11]]]],[[[21,[30]],[21,[30]]]],[[[22,[30]],[22,[30]]]],[[[22,[[0,[30,11]]]],[0,[30,11]]]],[[[23,[[0,[30,11]]]],[0,[30,11]]]],[[[23,[30]],[23,[30]]]],[[[24,[[0,[30,11]]]],[0,[30,11]]]],[[[24,[30]],[24,[30]]]],[[[25,[[0,[30,11]]]],[0,[30,11]]]],[[[25,[30]],[25,[30]]]],[[[26,[[0,[30,11]]]],[0,[30,11]]]],[[[26,[30]],[26,[30]]]],[[[27,[30]],[27,[30]]]],[[[27,[[0,[30,11]]]],[0,[30,11]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,31],[2,32],[4,32],[4,31],[5,32],[5,31],[16,32],[16,31],[17,32],[17,31],[18,31],[18,32],[19,32],[19,31],[20,31],[20,32],[21,32],[21,31],[22,31],[22,32],[23,31],[23,32],[24,31],[24,32],[25,31],[25,32],[26,31],[26,32],[27,32],[27,31],[2,32],[2,31],[4,32],[4,31],[5,31],[5,32],[16,31],[16,32],[17,31],[17,32],[18,32],[18,31],[19,32],[19,31],[20,32],[20,31],[21,32],[21,31],[22,31],[22,32],[23,32],[23,31],[24,31],[24,32],[25,32],[25,31],[26,32],[26,31],[27,32],[27,31],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[33],[33],[33],[33],[33],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[[2,[[0,[34,35]]]]],[[2,[[0,[34,35]]]]]],[[[4,[[0,[34,36,8]]]]],[[4,[[0,[34,36,8]]]]]],[[[5,[[0,[34,35]]]]],[[5,[[0,[34,35]]]]]],[[[16,[[0,[37,34,38,29,39,11,35]]]]],[[16,[[0,[37,34,38,29,39,11,35]]]]]],[[[17,[[0,[34,36,8]]]]],[[17,[[0,[34,36,8]]]]]],[[[18,[[0,[34,36,8]]]]],[[18,[[0,[34,36,8]]]]]],[[[19,[[0,[34,36,8]]]]],[[19,[[0,[34,36,8]]]]]],[[[20,[[0,[34,36,8]]]]],[[20,[[0,[34,36,8]]]]]],[[[21,[[0,[34,35]]]]],[[21,[[0,[34,35]]]]]],[[[22,[[0,[34,36,40,35]]]]],[[22,[[0,[34,36,40,35]]]]]],[[[23,[[0,[37,34,38,29,39,11,35]]]]],[[23,[[0,[37,34,38,29,39,11,35]]]]]],[[[24,[[0,[34,8,37]]]]],[[24,[[0,[34,8,37]]]]]],[[[25,[[0,[34,8,37]]]]],[[25,[[0,[34,8,37]]]]]],[[[26,[[41,[[0,[34,8]]]],[0,[34,8]]]]],[[26,[[41,[[0,[34,8]]]],[0,[34,8]]]]]],[[[27,[[0,[34,8,37]]]]],[[27,[[0,[34,8,37]]]]]],[[]],[[[2,[[0,[42,35]]]]]],[[[4,[[0,[42,36,8]]]]]],[[[5,[[0,[42,35]]]]]],[[[16,[[0,[37,42,38,29,39,11,35]]]]]],[[[17,[[0,[42,36,8]]]]]],[[[18,[[0,[42,36,8]]]]]],[[[19,[[0,[42,36,8]]]]]],[[[20,[[0,[42,36,8]]]]]],[[[21,[[0,[42,35]]]]]],[[[22,[[0,[42,36,40,35]]]]]],[[[23,[[0,[37,42,38,29,39,11,35]]]]]],[[[24,[[0,[42,8,37]]]]]],[[[25,[[0,[42,8,37]]]]]],[[[26,[[41,[[0,[42,8]]]],[0,[42,8]]]]]],[[[27,[[0,[42,8,37]]]]]],[[[2,[11]]],[[2,[11]]]],[[[4,[11]]],[[4,[11]]]],[[[5,[11]]],[[5,[11]]]],[[[12,[11]]],[[12,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[15,[11]]],[[15,[11]]]],[[[16,[11]]],[[16,[11]]]],[[[17,[11]]],[[17,[11]]]],[[[18,[11]]],[[18,[11]]]],[[[19,[11]]],[[19,[11]]]],[[[20,[11]]],[[20,[11]]]],[[[21,[11]]],[[21,[11]]]],[[[22,[11]]],[[22,[11]]]],[[[23,[11]]],[[23,[11]]]],[[[24,[11]]],[[24,[11]]]],[[[25,[11]]],[[25,[11]]]],[[[26,[11]]],[[26,[11]]]],[[[27,[11]]],[[27,[11]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,40,38]],[0,[36,40,38]]],[[0,[36,40,38]]]],0,[[]],[[]],[[]],[[]],[[],[[2,[35]]]],[[],[[4,[[0,[36,8]]]]]],[[],[[5,[35]]]],[[],[[12,[43]]]],[[],[[13,[43]]]],[[],[[14,[43]]]],[[],[[15,[43]]]],[[],[[16,[35]]]],[[],[[17,[8]]]],[[],[[18,[[0,[8,36]]]]]],[[],[[19,[[0,[8,36]]]]]],[[],[[20,[8]]]],[[],[[21,[35]]]],[[],[[22,[35]]]],[[],[[23,[35]]]],[[],[[24,[8]]]],[[],[[25,[[0,[8,37]]]]]],[[],[[26,[8]]]],[[],[[27,[[41,[8]],8]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[[17,[45]],[17,[45]]]],[[18,18]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,50,11]]]],[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,50,11]]]]]],[[[18,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]],[18,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]]]],[[[17,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[17,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[20,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[20,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[24,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[24,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[26,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[26,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[27,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[27,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[17,[[0,[52,11]]]],[0,[52,11]]]],[[[17,[52]],[17,[52]]]],[[[20,[52]],[20,[52]]]],[[[20,[[0,[52,11]]]],[0,[52,11]]]],[[[24,[52]],[24,[52]]]],[[[24,[[0,[52,11]]]],[0,[52,11]]]],[[[26,[52]],[26,[52]]]],[[[26,[[0,[52,11]]]],[0,[52,11]]]],[[[27,[[0,[52,11]]]],[0,[52,11]]]],[[[27,[52]],[27,[52]]]],[[[17,[39]],[17,[39]]]],[[[17,[[0,[39,11]]]],[0,[39,11]]]],[[[20,[[0,[39,11]]]],[0,[39,11]]]],[[[20,[39]],[20,[39]]]],[[[24,[[0,[39,11]]]],[0,[39,11]]]],[[[24,[39]],[24,[39]]]],[[[26,[39]],[26,[39]]]],[[[26,[[0,[39,11]]]],[0,[39,11]]]],[[[27,[[0,[39,11]]]],[0,[39,11]]]],[[[27,[39]],[27,[39]]]],0,[[[2,[53]],[2,[53]]],3],[[[4,[53]],[4,[53]]],3],[[[5,[53]],[5,[53]]],3],[[[12,[[0,[9,53]]]],[12,[[0,[9,53]]]]],3],[[[12,[[0,[9,53]]]],[0,[9,53]]],3],[[[13,[[0,[9,53]]]],[13,[[0,[9,53]]]]],3],[[[13,[[0,[9,53]]]],[0,[9,53]]],3],[[[14,[[0,[9,53]]]],[14,[[0,[9,53]]]]],3],[[[14,[[0,[9,53]]]],[0,[9,53]]],3],[[[15,[[0,[9,53]]]],[0,[9,53]]],3],[[[15,[[0,[9,53]]]],[15,[[0,[9,53]]]]],3],[[[16,[53]],[16,[53]]],3],[[[17,[53]],[17,[53]]],3],[[[18,[53]],[18,[53]]],3],[[[19,[53]],[19,[53]]],3],[[[20,[53]],[20,[53]]],3],[[[21,[53]],[21,[53]]],3],[[[22,[53]],[22,[53]]],3],[[[23,[53]],[23,[53]]],3],[[[24,[53]],[24,[53]]],3],[[[25,[53]],[25,[53]]],3],[[[26,[53]],[26,[53]]],3],[[[27,[53]],[27,[53]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[[2,[54]],55]],[[[4,[54]],55]],[[[5,[54]],55]],[[[12,[54]],55]],[[[13,[54]],55]],[[[14,[54]],55]],[[[15,[54]],55]],[[[16,[54]],55]],[[[17,[54]],55]],[[[18,[54]],55]],[[[19,[54]],55]],[[[20,[54]],55]],[[[21,[54]],55]],[[[22,[54]],55]],[[[23,[54]],55]],[[[24,[54]],55]],[[[25,[54]],55]],[[[26,[54]],55]],[[[27,[54]],55]],[[[2,[56,56]],57],58],[[[4,[56,56]],57],58],[[[5,[56,56]],57],58],[[[12,[56]],57],58],[[[13,[56]],57],58],[[[14,[56]],57],58],[[[15,[56]],57],58],[[[16,[56,56]],57],58],[[[17,[56,56]],57],58],[[[18,[56,56]],57],58],[[[19,[56,56]],57],58],[[[20,[56,56]],57],58],[[[21,[56]],57],58],[[[22,[56]],57],58],[[[23,[56]],57],58],[[[24,[56]],57],58],[[[25,[56]],57],58],[[[26,[56,56]],57],58],[[[27,[56,56]],57],58],[59,60],[61,[[63,[62]]]],[59,[[63,[35]]]],[60,59],[63,[[61,[62]]]],[60,[[61,[35]]]],[31,2],[[]],[31,2],[[[31,[2]]],[[2,[64]]]],[[],2],[31,2],[31,4],[[[31,[4]]],[[4,[64]]]],[[]],[31,4],[31,4],[[],4],[[[31,[5]]],[[5,[64]]]],[31,5],[[]],[[],5],[31,5],[31,5],[65],[[]],[[],12],[[],13],[65],[[]],[65],[[],14],[[]],[[]],[[],15],[65],[31,16],[[[31,[16]]],[[16,[64]]]],[[]],[[],16],[31,16],[31,16],[31,17],[31,17],[[],17],[[[66,[17]]],17],[[[31,[17]]],[[17,[64]]]],[[]],[31,17],[[]],[[],18],[31,18],[31,18],[31,18],[[[31,[18]]],[[18,[64]]]],[[]],[[],19],[31,19],[31,19],[31,19],[[[31,[19]]],[[19,[64]]]],[31,20],[[[31,[20]]],[[20,[64]]]],[[[66,[20]]],20],[[]],[31,20],[[],20],[31,20],[31,21],[[[31,[21]]],[[21,[64]]]],[[]],[31,21],[31,21],[[]],[[],[[22,[[0,[8,67]]]]]],[31,22],[[[31,[22]]],[[22,[64]]]],[31,22],[31,22],[31,23],[[]],[31,23],[[[31,[23]]],[[23,[64]]]],[31,23],[31,24],[[],24],[31,24],[[[31,[24]]],[[24,[64]]]],[[[66,[24]]],24],[[]],[31,24],[31,25],[31,25],[[],25],[[]],[[[31,[25]]],[[25,[64]]]],[31,25],[31,26],[31,26],[[],26],[[[66,[26]]],26],[31,26],[[[31,[26]]],[[26,[64]]]],[[]],[31,27],[31,27],[[[31,[27]]],[[27,[64]]]],[31,27],[[[66,[27]]],27],[[],27],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[[69,[[0,[6,8,37,67,40,38,11]]]]],[[2,[[0,[6,8,37,67,40,38,11]]]]]],[[[5,[[0,[36,8,37,70,40,38,11]]]]],[[2,[[0,[36,8,37,70,40,38,11]]]]]],[27,[[2,[71]]]],[17,[[2,[71]]]],[18,[[2,[71]]]],[20,[[2,[71]]]],[24,2],[[[2,[71]]],[[2,[71]]]],[25,2],[21,2],[19,[[2,[71]]]],[22,2],[[[73,[[72,[2]]]]],2],[4,[[2,[71]]]],[[[75,[74]]],[[2,[71]]]],[26,[[2,[71]]]],[23,2],[16,2],[[[18,[41]]],[[4,[41]]]],[[[26,[41]]],[[4,[41]]]],[[[16,[71]]],[[4,[41]]]],[23,[[4,[41]]]],[24,[[4,[41]]]],[[[73,[[72,[4]]]]],4],[[[2,[71]]],[[4,[41]]]],[[[69,[71]]],[[4,[41]]]],[[[27,[41]]],[[4,[41]]]],[[[19,[[0,[36,6,[77,[76]],46,40,11]]]]],[[4,[[0,[36,6,[77,[76]],46,40,11]]]]]],[25,[[4,[41]]]],[21,[[4,[41]]]],[[[20,[41]]],[[4,[41]]]],[[[17,[41]]],[[4,[41]]]],[22,[[4,[41]]]],[[[75,[74]]],[[4,[41]]]],[4,4],[[[5,[71]]],[[4,[41]]]],[[[69,[[0,[6,37,8,67,40,38,11]]]]],[[5,[[0,[6,37,8,67,40,38,11]]]]]],[26,[[5,[71]]]],[24,5],[[[2,[[0,[36,8,37,70,40,38,11]]]]],[[5,[[0,[36,8,37,70,40,38,11]]]]]],[19,[[5,[71]]]],[27,[[5,[71]]]],[22,5],[4,[[5,[71]]]],[20,[[5,[71]]]],[[[75,[74]]],[[5,[71]]]],[25,5],[21,5],[[[73,[[72,[5]]]]],5],[[[5,[71]]],[[5,[71]]]],[18,[[5,[71]]]],[17,[[5,[71]]]],[23,5],[[[16,[[0,[37,8,70,40]]]]],[[5,[[0,[37,8,70,40]]]]]],[24,16],[[[5,[[0,[37,40]]]]],[[16,[[0,[37,40]]]]]],[4,[[16,[71]]]],[[[75,[74]]],[[16,[71]]]],[2,16],[23,16],[69,16],[21,16],[18,[[16,[71]]]],[26,[[16,[71]]]],[27,[[16,[71]]]],[22,16],[19,[[16,[71]]]],[20,[[16,[71]]]],[25,16],[[[16,[71]]],[[16,[71]]]],[17,[[16,[71]]]],[[[73,[[72,[16]]]]],16],[[[5,[71]]],[[17,[41]]]],[[[20,[41]]],[[17,[41]]]],[[[2,[71]]],[[17,[41]]]],[17,17],[[[73,[[72,[17]]]]],17],[[[69,[71]]],[[17,[41]]]],[[[16,[71]]],[[17,[41]]]],[23,[[17,[41]]]],[[[26,[[41,[[0,[36,46,78,40,38,11]]]],[0,[36,46,78,40,38,11]]]]],[[17,[[41,[[0,[36,46,78,40,38,11]]]],[0,[36,46,78,40,38,11]]]]]],[[[4,[41]]],[[17,[41]]]],[[[27,[41]]],[[17,[41]]]],[24,[[17,[41]]]],[[[75,[74]]],[[17,[41]]]],[21,[[17,[41]]]],[[[19,[41]]],[[17,[41]]]],[25,[[17,[41]]]],[[[18,[[0,[6,8,67,48,51,11]]]]],[[17,[[0,[6,8,67,48,51,11]]]]]],[22,[[17,[41]]]],[[[75,[74]]],[[18,[41]]]],[[[20,[41]]],[[18,[41]]]],[25,[[18,[41]]]],[24,[[18,[41]]]],[[[4,[41]]],[[18,[41]]]],[18,18],[23,[[18,[41]]]],[[[17,[[0,[8,50]]]]],[[18,[[0,[8,50]]]]]],[21,[[18,[41]]]],[[[5,[71]]],[[18,[41]]]],[[[69,[71]]],[[18,[41]]]],[22,[[18,[41]]]],[[[16,[71]]],[[18,[41]]]],[[[27,[41]]],[[18,[41]]]],[[[2,[71]]],[[18,[41]]]],[[[19,[41]]],[[18,[41]]]],[[[73,[[72,[18]]]]],18],[[[26,[41]]],[[18,[41]]]],[[[75,[74]]],[[19,[41]]]],[22,[[19,[41]]]],[[[26,[41]]],[[19,[41]]]],[[[2,[71]]],[[19,[41]]]],[[[4,[[0,[36,6,[77,[76]],46,51,11]]]]],[[19,[[0,[36,6,[77,[76]],46,51,11]]]]]],[[[20,[[0,[8,50]]]]],[[19,[[0,[8,50]]]]]],[[[73,[[72,[19]]]]],19],[23,[[19,[41]]]],[[[16,[71]]],[[19,[41]]]],[[[27,[41]]],[[19,[41]]]],[[[69,[71]]],[[19,[41]]]],[[[17,[41]]],[[19,[41]]]],[19,19],[21,[[19,[41]]]],[[[18,[41]]],[[19,[41]]]],[25,[[19,[41]]]],[[[5,[71]]],[[19,[41]]]],[24,[[19,[41]]]],[[[2,[71]]],[[20,[41]]]],[[[18,[41]]],[[20,[41]]]],[[[16,[71]]],[[20,[41]]]],[25,[[20,[41]]]],[[[17,[41]]],[[20,[41]]]],[20,20],[24,[[20,[41]]]],[[[26,[[41,[[0,[36,8,46,79,80,40,81,11,82]]]],[0,[36,8,46,79,80,40,81,11,82]]]]],[[20,[[41,[[0,[36,8,46,79,80,40,81,11,82]]]],[0,[36,8,46,79,80,40,81,11,82]]]]]],[[[19,[[0,[6,8,67,48,51,11]]]]],[[20,[[0,[6,8,67,48,51,11]]]]]],[23,[[20,[41]]]],[21,[[20,[41]]]],[[[75,[74]]],[[20,[41]]]],[[[27,[41]]],[[20,[41]]]],[[[5,[71]]],[[20,[41]]]],[[[4,[41]]],[[20,[41]]]],[22,[[20,[41]]]],[[[73,[[72,[20]]]]],20],[[[69,[71]]],[[20,[41]]]],[[[4,[83]]],21],[[[16,[71]]],21],[[[69,[71]]],21],[[[24,[[0,[36,37,8,40,46,45,50,67,78,70,82,81,11]]]]],[[21,[[0,[36,37,8,40,46,45,50,67,78,70,82,81,11]]]]]],[[[18,[83]]],21],[23,21],[[[27,[83]]],21],[25,21],[[[26,[83]]],21],[[[75,[74]]],21],[22,21],[[[19,[83]]],21],[[[73,[[72,[21]]]]],21],[21,21],[[[5,[71]]],21],[[[20,[83]]],21],[[[2,[71]]],21],[[[17,[83]]],21],[25,22],[[[27,[83]]],22],[[[17,[83]]],22],[[[20,[83]]],22],[[[16,[71]]],22],[[[23,[[0,[37,8,70,40]]]]],[[22,[[0,[37,8,70,40]]]]]],[[[19,[83]]],22],[[[26,[83]]],22],[[[4,[83]]],22],[[[2,[71]]],22],[22,22],[[[75,[74]]],22],[[[5,[71]]],22],[21,22],[[[18,[83]]],22],[[[69,[71]]],22],[[[73,[[72,[22]]]]],22],[[[24,[[0,[36,67,11,46,45,78,40,48,8,50,37,70,82,81]]]]],[[22,[[0,[36,67,11,46,45,78,40,48,8,50,37,70,82,81]]]]]],[[[19,[83]]],23],[[[26,[83]]],23],[[[73,[[72,[23]]]]],23],[[[27,[83]]],23],[[[20,[83]]],23],[21,23],[[[69,[71]]],23],[[[17,[83]]],23],[[[5,[71]]],23],[[[75,[74]]],23],[[[4,[83]]],23],[25,23],[[[18,[83]]],23],[[[16,[71]]],23],[[[22,[[0,[37,40]]]]],[[23,[[0,[37,40]]]]]],[24,23],[[[2,[71]]],23],[[[21,[[0,[6,37,8,40,45,67,81,82,46,78,48,11]]]]],[[24,[[0,[6,37,8,40,45,67,81,82,46,78,48,11]]]]]],[24,24],[[[27,[83]]],24],[[[73,[[72,[24]]]]],24],[[[4,[83]]],24],[[[26,[83,[0,[36,78,40]]]]],[[24,[[0,[36,78,40]]]]]],[[[25,[[0,[6,8,67,48,51,11]]]]],[[24,[[0,[6,8,67,48,51,11]]]]]],[[[19,[83]]],24],[[[17,[83]]],24],[[[18,[83]]],24],[23,24],[[[22,[[0,[6,81,82,67,46,40,11,37,8,78,48]]]]],[[24,[[0,[6,81,82,67,46,40,11,37,8,78,48]]]]]],[[[75,[74]]],24],[[[69,[71,[0,[36,78,40,84]]]]],[[24,[[0,[36,78,40,84]]]]]],[[[16,[71]]],24],[[[20,[83]]],24],[[[2,[71]]],24],[[[5,[71]]],24],[[[19,[83]]],25],[25,25],[[[75,[74]]],25],[[[73,[[72,[25]]]]],25],[[[27,[83]]],25],[[[26,[83]]],25],[21,25],[[[18,[83]]],25],[[[17,[83]]],25],[[[69,[71]]],25],[22,25],[[[4,[83]]],25],[23,25],[[[24,[[0,[50,11]]]]],[[25,[[0,[50,11]]]]]],[[[16,[71]]],25],[[[20,[83]]],25],[[[5,[71]]],25],[[[2,[71]]],25],[25,26],[[[24,[[0,[36,46,40]]]]],[[26,[83,[0,[36,46,40]]]]]],[[[16,[71]]],[[26,[41]]]],[26,26],[21,26],[[[27,[[0,[8,37,70,40,11]]]]],[[26,[[0,[8,37,70,40,11]]]]]],[[[19,[41]]],[[26,[41]]]],[[[73,[[72,[26]]]]],26],[[[4,[41]]],[[26,[41]]]],[22,26],[[[20,[[41,[[0,[36,8,80,46,40,81,11,82]]]],[0,[36,8,80,46,40,81,11,82]]]]],[[26,[[41,[[0,[36,8,80,46,40,81,11,82]]]],[0,[36,8,80,46,40,81,11,82]]]]]],[[[69,[71,[0,[40,85]]]]],[[26,[41,[0,[40,85]]]]]],[[[75,[74]]],[[26,[41]]]],[[[18,[41]]],[[26,[41]]]],[[[2,[71]]],[[26,[41]]]],[23,26],[[[17,[[41,[[0,[36,80,46,40,38,11]]]],[0,[36,80,46,40,38,11]]]]],[[26,[[41,[[0,[36,80,46,40,38,11]]]],[0,[36,80,46,40,38,11]]]]]],[[[5,[71]]],[[26,[41]]]],[[[2,[71]]],[[27,[41]]]],[21,[[27,[41]]]],[[[69,[71]]],[[27,[41]]]],[[[17,[41]]],[[27,[41]]]],[[[75,[74]]],27],[[[20,[41]]],[[27,[41]]]],[[[5,[71]]],[[27,[41]]]],[[[16,[71]]],[[27,[41]]]],[[[26,[[0,[8,70,40,11]]]]],[[27,[[0,[8,70,40,11]]]]]],[[[18,[41]]],[[27,[41]]]],[23,[[27,[41]]]],[27,27],[24,[[27,[41]]]],[22,[[27,[41]]]],[25,[[27,[41]]]],[[[19,[41]]],[[27,[41]]]],[[[4,[41]]],[[27,[41]]]],[[[73,[[72,[27]]]]],27],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[55,[[2,[43]]]],[55,[[4,[43]]]],[55,[[5,[43]]]],[55,[[16,[43]]]],[55,[[17,[43]]]],[55,[[18,[43]]]],[55,[[19,[43]]]],[55,[[20,[43]]]],[55,[[21,[43]]]],[55,[[22,[43]]]],[55,[[23,[43]]]],[55,[[24,[43]]]],[55,[[25,[43]]]],[55,[[26,[43]]]],[55,[[27,[43]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]],[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]]]],[[[18,[[0,[36,6,37,8,48,49,45,46,47,40,38,11]]]],[18,[[0,[36,6,37,8,48,49,45,46,47,40,38,11]]]]]],[[]],[[[2,[71,[0,[36,40,38]]]],[2,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[4,[[0,[36,40,38]]]],[4,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[5,[71,[0,[36,40,38]]]],[5,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[16,[71,[0,[36,40,38]]]],[16,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[17,[[0,[36,40,38]]]],[17,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[18,[[0,[36,40,38]]]],[18,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[19,[[0,[36,40,38]]]],[19,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[20,[[41,[[0,[36,40,38]]]],[0,[36,40,38]]]],[20,[[41,[[0,[36,40,38]]]],[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[21,[[0,[36,40,38]]]],[21,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[23,[[0,[36,40,38]]]],[23,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[24,[[0,[36,40,38]]]],[24,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[25,[[0,[36,40,38]]]],[25,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[26,[[0,[36,40,38]]]],[26,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[27,[[0,[36,40,38]]]],[27,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[]],[[[2,[11]]],[[14,[11]]]],[[[4,[11]]],[[13,[11]]]],[[[5,[11]]],[[14,[11]]]],[[[16,[11]]],[[14,[11]]]],[[[17,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[12,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[18,[11]]],[[12,[11]]]],[[[19,[11]]],[[13,[11]]]],[[[20,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[13,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[21,[11]]],[[15,[11]]]],[[[22,[11]]],[[15,[11]]]],[[[23,[11]]],[[15,[11]]]],[[[24,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[15,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[25,[11]]],[[15,[11]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[17,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[17,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[20,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[20,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[24,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[24,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[17,[[0,[36,[51,[[0,[36,[51,[[0,[36,[51,[[0,[36,51,79,45]]]],79,45]]]],79,45]]]],79,45]]]],[17,[[0,[36,[51,[[0,[36,[51,[[0,[36,[51,[[0,[36,51,79,45]]]],79,45]]]],79,45]]]],79,45]]]]]],[[18,18]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[],68],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[2],[[[2,[55]]]],[2],[[[4,[55]]]],[4],[4],[[[5,[55]]]],[5],[5],[12],[[[12,[55]]]],[12],[13],[13],[[[13,[55]]]],[14],[[[14,[55]]]],[14],[15],[15],[[[15,[55]]]],[16],[[[16,[55]]]],[16],[17],[17],[[[17,[55]]]],[18],[18],[[[18,[55]]]],[19],[[[19,[55]]]],[19],[20],[20],[[[20,[55]]]],[[[21,[55]]]],[21],[21],[[[22,[55]]]],[22],[22],[[[23,[55]]]],[23],[23],[24],[24],[[[24,[55]]]],[25],[25],[[[25,[55]]]],[26],[26],[[[26,[55]]]],[27],[27],[[[27,[55]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[2,[[0,[38,35]]]]]],[[[4,[[0,[38,36,8]]]]]],[[[5,[[0,[38,35]]]]]],[[[16,[[0,[38,29,11,35]]]]]],[[[17,[[0,[38,36,8]]]]]],[[[18,[[0,[38,36,8]]]]]],[[[19,[[0,[38,36,8]]]]]],[[[20,[[0,[38,36,8]]]]]],[[[21,[[0,[38,35]]]]]],[[[22,[[0,[38,36,40,35]]]]]],[[[23,[[0,[38,29,11,35]]]]]],[[[24,[[0,[38,8,37]]]]]],[[[25,[[0,[38,8,37]]]]]],[[[26,[[41,[[0,[38,8]]]],[0,[38,8]]]]]],[[[27,[[0,[38,8,37]]]]]],0,0,0,0,0,0,0,0,0,0,[[]],[[[2,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[2,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[4,[[0,[36,8,67,34,40,38,11]]]]]],[[[5,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[5,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[16,[[0,[36,8,67,40,38,11,35]]]],[0,[36,8,67,40,38,11,35]]],[[16,[[0,[36,8,67,40,38,11,35]]]]]],[[[17,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[17,[[0,[36,8,67,34,40,38,11]]]]]],[[[18,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[18,[[0,[36,8,67,34,40,38,11]]]]]],[[[19,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[19,[[0,[36,8,67,34,40,38,11]]]]]],[[[20,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[20,[[0,[36,8,67,34,40,38,11]]]]]],[[[21,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[21,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,67,34,40,38,11,36,35]]]],[0,[36,8,67,34,40,38,11,36,35]]],[[22,[[0,[36,8,67,34,40,38,11,36,35]]]]]],[[[23,[[0,[36,8,67,40,38,11,35]]]],[0,[36,8,67,40,38,11,35]]],[[23,[[0,[36,8,67,40,38,11,35]]]]]],[[[24,[[0,[36,8,67,34,40,38,11,37]]]],[0,[36,8,67,34,40,38,11,37]]],[[24,[[0,[36,8,67,34,40,38,11,37]]]]]],[[[25,[[0,[36,8,67,34,40,38,11,8,37]]]],[0,[36,8,67,34,40,38,11,8,37]]],[[25,[[0,[36,8,67,34,40,38,11,8,37]]]]]],[[[26,[[41,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[26,[[41,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]]]]],[[[27,[[0,[36,8,67,34,40,38,11,37]]]],[0,[36,8,67,34,40,38,11,37]]],[[27,[[0,[36,8,67,34,40,38,11,37]]]]]],[[]],[[[2,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[5,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[16,[[0,[36,8,67,42,30,88,40,38,11,35]]]],[0,[36,8,67,42,30,88,40,38,11,35]]]],[[[17,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[18,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[19,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[20,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[21,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,67,42,30,40,38,11,36,35]]]],[0,[36,8,67,42,30,40,38,11,36,35]]]],[[[23,[[0,[36,8,67,42,30,88,40,38,11,35]]]],[0,[36,8,67,42,30,88,40,38,11,35]]]],[[[24,[[0,[36,8,67,42,30,40,38,11,37]]]],[0,[36,8,67,42,30,40,38,11,37]]]],[[[25,[[0,[36,8,67,42,30,40,38,11,8,37]]]],[0,[36,8,67,42,30,40,38,11,8,37]]]],[[[26,[[41,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[27,[[0,[36,8,67,42,30,40,38,11,37]]]],[0,[36,8,67,42,30,40,38,11,37]]]],[[]],[[[2,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[2,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[4,[[0,[36,8,67,34,40,38,11]]]]]],[[[5,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[5,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[16,[[0,[36,8,67,40,38,11,35]]]],[0,[36,8,67,40,38,11,35]]],[[16,[[0,[36,8,67,40,38,11,35]]]]]],[[[17,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[17,[[0,[36,8,67,34,40,38,11]]]]]],[[[18,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[18,[[0,[36,8,67,34,40,38,11]]]]]],[[[19,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[19,[[0,[36,8,67,34,40,38,11]]]]]],[[[20,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[20,[[0,[36,8,67,34,40,38,11]]]]]],[[[21,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[21,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,67,34,40,38,11,36,35]]]],[0,[36,8,67,34,40,38,11,36,35]]],[[22,[[0,[36,8,67,34,40,38,11,36,35]]]]]],[[[23,[[0,[36,8,67,40,38,11,35]]]],[0,[36,8,67,40,38,11,35]]],[[23,[[0,[36,8,67,40,38,11,35]]]]]],[[[24,[[0,[36,8,67,34,40,38,11,37]]]],[0,[36,8,67,34,40,38,11,37]]],[[24,[[0,[36,8,67,34,40,38,11,37]]]]]],[[[25,[[0,[36,8,67,34,40,38,11,8,37]]]],[0,[36,8,67,34,40,38,11,8,37]]],[[25,[[0,[36,8,67,34,40,38,11,8,37]]]]]],[[[26,[[41,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[26,[[41,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]]]]],[[[27,[[0,[36,8,67,34,40,38,11,37]]]],[0,[36,8,67,34,40,38,11,37]]],[[27,[[0,[36,8,67,34,40,38,11,37]]]]]],[[]],[[[2,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[5,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[16,[[0,[36,8,67,42,30,88,40,38,11,35]]]],[0,[36,8,67,42,30,88,40,38,11,35]]]],[[[17,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[18,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[19,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[20,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[21,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,67,42,30,40,38,11,36,35]]]],[0,[36,8,67,42,30,40,38,11,36,35]]]],[[[23,[[0,[36,8,67,42,30,88,40,38,11,35]]]],[0,[36,8,67,42,30,88,40,38,11,35]]]],[[[24,[[0,[36,8,67,42,30,40,38,11,37]]]],[0,[36,8,67,42,30,40,38,11,37]]]],[[[25,[[0,[36,8,67,42,30,40,38,11,8,37]]]],[0,[36,8,67,42,30,40,38,11,8,37]]]],[[[26,[[41,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[27,[[0,[36,8,67,42,30,40,38,11,37]]]],[0,[36,8,67,42,30,40,38,11,37]]]],0,0,0,0,0,[[]],[[[2,[[0,[6,7,8,37,34,40,11]]]],[2,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[2,[[0,[6,7,8,37,34,40,11]]]]]],[[[4,[[0,[6,7,8,37,34,40,11]]]],[4,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[4,[[0,[6,7,8,37,34,40,11]]]]]],[[[5,[[0,[6,7,8,37,34,40,11]]]],[5,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[5,[[0,[6,7,8,37,34,40,11]]]]]],[[[16,[[0,[6,7,8,37,34,40,11]]]],[16,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[16,[[0,[6,7,8,37,34,40,11]]]]]],[[[17,[[0,[36,8,37,40,34,11]]]],[17,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[17,[[0,[36,8,37,40,34,11]]]]]],[[[18,[[0,[6,7,8,37,34,40,11]]]],[18,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[18,[[0,[6,7,8,37,34,40,11]]]]]],[[[19,[[0,[6,7,8,37,34,40,11]]]],[19,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[19,[[0,[6,7,8,37,34,40,11]]]]]],[[[20,[[0,[36,8,37,40,34,11]]]],[20,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[20,[[0,[36,8,37,40,34,11]]]]]],[[[21,[[0,[6,7,8,37,34,40,11]]]],[21,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[21,[[0,[6,7,8,37,34,40,11]]]]]],[[[22,[[0,[6,7,8,37,34,40,11]]]],[22,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[22,[[0,[6,7,8,37,34,40,11]]]]]],[[[23,[[0,[6,7,8,37,34,40,11]]]],[23,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[23,[[0,[6,7,8,37,34,40,11]]]]]],[[[24,[[0,[36,8,37,40,34,11]]]],[24,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[24,[[0,[36,8,37,40,34,11]]]]]],[[[25,[[0,[6,7,8,37,34,40,11]]]],[25,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[25,[[0,[6,7,8,37,34,40,11]]]]]],[[[26,[[0,[36,8,37,40,34,11]]]],[26,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[26,[[0,[36,8,37,40,34,11]]]]]],[[[27,[[0,[36,8,37,40,34,11]]]],[27,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[27,[[0,[36,8,37,40,34,11]]]]]],[[]],[[[2,[[0,[6,7,8,37,34,30,40,11]]]],[2,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[4,[[0,[6,7,8,37,34,30,40,11]]]],[4,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[5,[[0,[6,7,8,37,34,30,40,11]]]],[5,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[16,[[0,[6,7,8,37,34,30,40,11]]]],[16,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[17,[[0,[36,8,37,30,40,34,11]]]],[17,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[18,[[0,[6,7,8,37,34,30,40,11]]]],[18,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[19,[[0,[6,7,8,37,34,30,40,11]]]],[19,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[20,[[0,[36,8,37,30,40,34,11]]]],[20,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[21,[[0,[6,7,8,37,34,30,40,11]]]],[21,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[22,[[0,[6,7,8,37,34,30,40,11]]]],[22,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[23,[[0,[6,7,8,37,34,30,40,11]]]],[23,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[24,[[0,[36,8,37,30,40,34,11]]]],[24,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[25,[[0,[6,7,8,37,34,30,40,11]]]],[25,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[26,[[0,[36,8,37,30,40,34,11]]]],[26,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[27,[[0,[36,8,37,30,40,34,11]]]],[27,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[17,[[0,[51,11]]]],[0,[51,11]]]],[[[17,[51]],[17,[51]]]],[[[20,[51]],[20,[51]]]],[[[20,[[0,[51,11]]]],[0,[51,11]]]],[[[24,[51]],[24,[51]]]],[[[24,[[0,[51,11]]]],[0,[51,11]]]],[[[26,[51]],[26,[51]]]],[[[26,[[0,[51,11]]]],[0,[51,11]]]],[[[27,[[0,[51,11]]]],[0,[51,11]]]],[[[27,[51]],[27,[51]]]],[[[17,[[0,[89,11]]]],[0,[89,11]]]],[[[17,[89]],[17,[89]]]],[[[20,[89]],[20,[89]]]],[[[20,[[0,[89,11]]]],[0,[89,11]]]],[[[24,[89]],[24,[89]]]],[[[24,[[0,[89,11]]]],[0,[89,11]]]],[[[26,[89]],[26,[89]]]],[[[26,[[0,[89,11]]]],[0,[89,11]]]],[[[27,[89]],[27,[89]]]],[[[27,[[0,[89,11]]]],[0,[89,11]]]],0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[17,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[20,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[20,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[24,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[24,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[26,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[26,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[27,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[27,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[2,[90]],[2,[90]]],3],[[[4,[90]],[4,[90]]],3],[[[5,[90]],[5,[90]]],3],[[[12,[[0,[6,7,8,9,10,11,90]]]],[12,[[0,[6,7,8,9,10,11,90]]]]],3],[[[13,[[0,[6,7,8,9,10,11,90]]]],[13,[[0,[6,7,8,9,10,11,90]]]]],3],[[[14,[[0,[6,7,8,9,10,11,90]]]],[14,[[0,[6,7,8,9,10,11,90]]]]],3],[[[15,[[0,[6,7,8,9,10,11,90]]]],[15,[[0,[6,7,8,9,10,11,90]]]]],3],[[[16,[90]],[16,[90]]],3],[[[17,[90]],[17,[90]]],3],[[[18,[90]],[18,[90]]],3],[[[19,[90]],[19,[90]]],3],[[[20,[90]],[20,[90]]],3],[[[21,[90]],[21,[90]]],3],[[[22,[90]],[22,[90]]],3],[[[23,[90]],[23,[90]]],3],[[[24,[90]],[24,[90]]],3],[[[25,[90]],[25,[90]]],3],[[[26,[90]],[26,[90]]],3],[[[27,[90]],[27,[90]]],3],[[[2,[90]],[2,[90]]],3],[[[4,[90]],[4,[90]]],3],[[[5,[90]],[5,[90]]],3],[[[12,[[0,[6,7,8,9,10,11,90]]]],[12,[[0,[6,7,8,9,10,11,90]]]]],3],[[[13,[[0,[6,7,8,9,10,11,90]]]],[13,[[0,[6,7,8,9,10,11,90]]]]],3],[[[14,[[0,[6,7,8,9,10,11,90]]]],[14,[[0,[6,7,8,9,10,11,90]]]]],3],[[[15,[[0,[6,7,8,9,10,11,90]]]],[15,[[0,[6,7,8,9,10,11,90]]]]],3],[[[16,[90]],[16,[90]]],3],[[[17,[90]],[17,[90]]],3],[[[18,[90]],[18,[90]]],3],[[[19,[90]],[19,[90]]],3],[[[20,[90]],[20,[90]]],3],[[[21,[90]],[21,[90]]],3],[[[22,[90]],[22,[90]]],3],[[[23,[90]],[23,[90]]],3],[[[24,[90]],[24,[90]]],3],[[[25,[90]],[25,[90]]],3],[[[26,[90]],[26,[90]]],3],[[[27,[90]],[27,[90]]],3],0,[[]],[[[2,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[2,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[4,[[0,[36,8,67,34,40,38,11]]]]]],[[[5,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[5,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[18,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[18,[[0,[36,8,67,34,40,38,11]]]]]],[[[19,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[19,[[0,[36,8,67,34,40,38,11]]]]]],[[[21,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[21,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,67,34,40,38,11,36,35]]]],[0,[36,8,67,34,40,38,11,36,35]]],[[22,[[0,[36,8,67,34,40,38,11,36,35]]]]]],[[]],[[[2,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[5,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[18,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[19,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[21,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,67,42,30,40,38,11,36,35]]]],[0,[36,8,67,42,30,40,38,11,36,35]]]],[[]],[[[2,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[2,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[4,[[0,[36,8,67,34,40,38,11]]]]]],[[[5,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[5,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[18,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[18,[[0,[36,8,67,34,40,38,11]]]]]],[[[19,[[0,[36,8,67,34,40,38,11]]]],[0,[36,8,67,34,40,38,11]]],[[19,[[0,[36,8,67,34,40,38,11]]]]]],[[[21,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[21,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,67,34,40,38,11,36,35]]]],[0,[36,8,67,34,40,38,11,36,35]]],[[22,[[0,[36,8,67,34,40,38,11,36,35]]]]]],[[]],[[[2,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[5,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[18,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[19,[[0,[36,8,67,42,30,40,38,11]]]],[0,[36,8,67,42,30,40,38,11]]]],[[[21,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,67,42,30,40,38,11,36,35]]]],[0,[36,8,67,42,30,40,38,11,36,35]]]],[[[2,[91]],[2,[91]]]],[[[2,[[0,[91,11]]]],[0,[91,11]]]],[[[4,[91]],[4,[91]]]],[[[4,[[0,[91,11]]]],[0,[91,11]]]],[[[5,[91]],[5,[91]]]],[[[5,[[0,[91,11]]]],[0,[91,11]]]],[[[12,[91]],[12,[91]]],[[12,[91]]]],[[[12,[91]],91],[[12,[91]]]],[[[13,[91]],91],[[13,[91]]]],[[[13,[91]],[13,[91]]],[[13,[91]]]],[[[14,[91]],91],[[14,[91]]]],[[[14,[91]],[14,[91]]],[[14,[91]]]],[[[15,[91]],[15,[91]]],[[15,[91]]]],[[[15,[91]],91],[[15,[91]]]],[[[16,[91]],[16,[91]]]],[[[16,[[0,[91,11]]]],[0,[91,11]]]],[[[17,[[0,[91,11]]]],[0,[91,11]]]],[[[17,[91]],[17,[91]]]],[[[18,[[0,[91,11]]]],[0,[91,11]]]],[[[18,[91]],[18,[91]]]],[[[19,[91]],[19,[91]]]],[[[19,[[0,[91,11]]]],[0,[91,11]]]],[[[20,[91]],[20,[91]]]],[[[20,[[0,[91,11]]]],[0,[91,11]]]],[[[21,[91]],[21,[91]]]],[[[21,[[0,[91,11]]]],[0,[91,11]]]],[[[22,[[0,[91,11]]]],[0,[91,11]]]],[[[22,[91]],[22,[91]]]],[[[23,[[0,[91,11]]]],[0,[91,11]]]],[[[23,[91]],[23,[91]]]],[[[24,[[0,[91,11]]]],[0,[91,11]]]],[[[24,[91]],[24,[91]]]],[[[25,[91]],[25,[91]]]],[[[25,[[0,[91,11]]]],[0,[91,11]]]],[[[26,[91]],[26,[91]]]],[[[26,[[0,[91,11]]]],[0,[91,11]]]],[[[27,[91]],[27,[91]]]],[[[27,[[0,[91,11]]]],[0,[91,11]]]],[[[2,[92]],[2,[92]]]],[[[2,[[0,[92,11]]]],[0,[92,11]]]],[[[4,[92]],[4,[92]]]],[[[4,[[0,[92,11]]]],[0,[92,11]]]],[[[5,[[0,[92,11]]]],[0,[92,11]]]],[[[5,[92]],[5,[92]]]],[[[12,[92]],[12,[92]]],[[12,[92]]]],[[[12,[92]],92],[[12,[92]]]],[[[13,[92]],[13,[92]]],[[13,[92]]]],[[[13,[92]],92],[[13,[92]]]],[[[14,[92]],[14,[92]]],[[14,[92]]]],[[[14,[92]],92],[[14,[92]]]],[[[15,[92]],92],[[15,[92]]]],[[[15,[92]],[15,[92]]],[[15,[92]]]],[[[16,[[0,[92,11]]]],[0,[92,11]]]],[[[16,[92]],[16,[92]]]],[[[17,[92]],[17,[92]]]],[[[17,[[0,[92,11]]]],[0,[92,11]]]],[[[18,[[0,[92,11]]]],[0,[92,11]]]],[[[18,[92]],[18,[92]]]],[[[19,[[0,[92,11]]]],[0,[92,11]]]],[[[19,[92]],[19,[92]]]],[[[20,[92]],[20,[92]]]],[[[20,[[0,[92,11]]]],[0,[92,11]]]],[[[21,[92]],[21,[92]]]],[[[21,[[0,[92,11]]]],[0,[92,11]]]],[[[22,[[0,[92,11]]]],[0,[92,11]]]],[[[22,[92]],[22,[92]]]],[[[23,[[0,[92,11]]]],[0,[92,11]]]],[[[23,[92]],[23,[92]]]],[[[24,[92]],[24,[92]]]],[[[24,[[0,[92,11]]]],[0,[92,11]]]],[[[25,[[0,[92,11]]]],[0,[92,11]]]],[[[25,[92]],[25,[92]]]],[[[26,[92]],[26,[92]]]],[[[26,[[0,[92,11]]]],[0,[92,11]]]],[[[27,[[0,[92,11]]]],[0,[92,11]]]],[[[27,[92]],[27,[92]]]],0,0,0,0,0,[[]],[[2,[77,[14]]]],[[4,[77,[13]]]],[[5,[77,[14]]]],[[16,[77,[14]]]],[[18,[77,[12]]]],[[19,[77,[13]]]],[[21,[77,[15]]]],[[22,[77,[15]]]],[[23,[77,[15]]]],[[25,[77,[15]]]],[[]],[[[2,[29]]],[[2,[29]]]],[[[4,[29]]],[[4,[29]]]],[[[5,[29]]],[[5,[29]]]],[[[16,[29]]],[[16,[29]]]],[[[18,[29]]],[[18,[29]]]],[[[19,[29]]],[[19,[29]]]],[[[21,[29]]],[[21,[29]]]],[[[22,[29]]],[[22,[29]]]],[[[23,[29]]],[[23,[29]]]],[[[25,[29]]],[[25,[29]]]],[[]],[[[2,[30]]]],[[[4,[30]]]],[[[5,[30]]]],[[[16,[30]]]],[[[18,[30]]]],[[[19,[30]]]],[[[21,[30]]]],[[[22,[30]]]],[[[23,[30]]]],[[[25,[30]]]],[[]],[2],[4],[5],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],0,0,0,0,[[[2,[10]],[2,[10]]]],[[[2,[[0,[10,11]]]],[0,[10,11]]]],[[[4,[10]],[4,[10]]]],[[[4,[[0,[10,11]]]],[0,[10,11]]]],[[[5,[10]],[5,[10]]]],[[[5,[[0,[10,11]]]],[0,[10,11]]]],[[[12,[10]],[12,[10]]],[[12,[10]]]],[[[12,[10]],10],[[12,[10]]]],[[[13,[10]],10],[[13,[10]]]],[[[13,[10]],[13,[10]]],[[13,[10]]]],[[[14,[10]],10],[[14,[10]]]],[[[14,[10]],[14,[10]]],[[14,[10]]]],[[[15,[10]],[15,[10]]],[[15,[10]]]],[[[15,[10]],10],[[15,[10]]]],[[[16,[10]],[16,[10]]]],[[[16,[[0,[10,11]]]],[0,[10,11]]]],[[[17,[[0,[10,11]]]],[0,[10,11]]]],[[[17,[10]],[17,[10]]]],[[[18,[10]],[18,[10]]]],[[[18,[[0,[10,11]]]],[0,[10,11]]]],[[[19,[10]],[19,[10]]]],[[[19,[[0,[10,11]]]],[0,[10,11]]]],[[[20,[[0,[10,11]]]],[0,[10,11]]]],[[[20,[10]],[20,[10]]]],[[[21,[[0,[10,11]]]],[0,[10,11]]]],[[[21,[10]],[21,[10]]]],[[[22,[[0,[10,11]]]],[0,[10,11]]]],[[[22,[10]],[22,[10]]]],[[[23,[10]],[23,[10]]]],[[[23,[[0,[10,11]]]],[0,[10,11]]]],[[[24,[[0,[10,11]]]],[0,[10,11]]]],[[[24,[10]],[24,[10]]]],[[[25,[10]],[25,[10]]]],[[[25,[[0,[10,11]]]],[0,[10,11]]]],[[[26,[[0,[10,11]]]],[0,[10,11]]]],[[[26,[10]],[26,[10]]]],[[[27,[10]],[27,[10]]]],[[[27,[[0,[10,11]]]],[0,[10,11]]]],[[[2,[88]],[2,[88]]]],[[[2,[[0,[88,11]]]],[0,[88,11]]]],[[[4,[[0,[88,11]]]],[0,[88,11]]]],[[[4,[88]],[4,[88]]]],[[[5,[88]],[5,[88]]]],[[[5,[[0,[88,11]]]],[0,[88,11]]]],[[[12,[88]],[12,[88]]]],[[[12,[88]],88]],[[[13,[88]],88]],[[[13,[88]],[13,[88]]]],[[[14,[88]],88]],[[[14,[88]],[14,[88]]]],[[[15,[88]],[15,[88]]]],[[[15,[88]],88]],[[[16,[[0,[88,11]]]],[0,[88,11]]]],[[[16,[88]],[16,[88]]]],[[[17,[88]],[17,[88]]]],[[[17,[[0,[88,11]]]],[0,[88,11]]]],[[[18,[88]],[18,[88]]]],[[[18,[[0,[88,11]]]],[0,[88,11]]]],[[[19,[[0,[88,11]]]],[0,[88,11]]]],[[[19,[88]],[19,[88]]]],[[[20,[88]],[20,[88]]]],[[[20,[[0,[88,11]]]],[0,[88,11]]]],[[[21,[88]],[21,[88]]]],[[[21,[[0,[88,11]]]],[0,[88,11]]]],[[[22,[[0,[88,11]]]],[0,[88,11]]]],[[[22,[88]],[22,[88]]]],[[[23,[[0,[88,11]]]],[0,[88,11]]]],[[[23,[88]],[23,[88]]]],[[[24,[[0,[88,11]]]],[0,[88,11]]]],[[[24,[88]],[24,[88]]]],[[[25,[88]],[25,[88]]]],[[[25,[[0,[88,11]]]],[0,[88,11]]]],[[[26,[[0,[88,11]]]],[0,[88,11]]]],[[[26,[88]],[26,[88]]]],[[[27,[88]],[27,[88]]]],[[[27,[[0,[88,11]]]],[0,[88,11]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[32,[[93,[2]]]],[[],93],[32,[[93,[2]]]],[32,[[93,[4]]]],[32,[[93,[4]]]],[[],93],[[],93],[32,[[93,[5]]]],[32,[[93,[5]]]],[[],93],[[],93],[[],93],[[],93],[32,[[93,[16]]]],[[],93],[32,[[93,[16]]]],[[],93],[32,[[93,[17]]]],[32,[[93,[17]]]],[32,[[93,[18]]]],[32,[[93,[18]]]],[[],93],[[],93],[32,[[93,[19]]]],[32,[[93,[19]]]],[[],93],[32,[[93,[20]]]],[32,[[93,[20]]]],[32,[[93,[21]]]],[32,[[93,[21]]]],[[],93],[[],93],[32,[[93,[22]]]],[32,[[93,[22]]]],[32,[[93,[23]]]],[[],93],[32,[[93,[23]]]],[[],93],[32,[[93,[24]]]],[32,[[93,[24]]]],[32,[[93,[25]]]],[[],93],[32,[[93,[25]]]],[32,[[93,[26]]]],[32,[[93,[26]]]],[[],93],[32,[[93,[27]]]],[32,[[93,[27]]]],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[2,[96]],[2,[96]],44],3],[[[4,[96]],[4,[96]],44],3],[[[5,[96]],[5,[96]],44],3],[[[12,[[0,[6,7,8,9,10,11,96]]]],[12,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[13,[[0,[6,7,8,9,10,11,96]]]],[13,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[14,[[0,[6,7,8,9,10,11,96]]]],[14,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[15,[[0,[6,7,8,9,10,11,96]]]],[15,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[16,[96]],[16,[96]],44],3],[[[17,[96]],[17,[96]],44],3],[[[18,[96]],[18,[96]],44],3],[[[19,[96]],[19,[96]],44],3],[[[20,[96]],[20,[96]],44],3],[[[21,[96]],[21,[96]],44],3],[[[22,[96]],[22,[96]],44],3],[[[23,[96]],[23,[96]],44],3],[[[24,[96]],[24,[96]],44],3],[[[25,[96]],[25,[96]],44],3],[[[26,[96]],[26,[96]],44],3],[[[27,[96]],[27,[96]],44],3],[[[2,[96]],[2,[96]],44],3],[[[4,[96]],[4,[96]],44],3],[[[5,[96]],[5,[96]],44],3],[[[12,[[0,[6,7,8,9,10,11,96]]]],[12,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[13,[[0,[6,7,8,9,10,11,96]]]],[13,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[14,[[0,[6,7,8,9,10,11,96]]]],[14,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[15,[[0,[6,7,8,9,10,11,96]]]],[15,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[16,[96]],[16,[96]],44],3],[[[17,[96]],[17,[96]],44],3],[[[18,[96]],[18,[96]],44],3],[[[19,[96]],[19,[96]],44],3],[[[20,[96]],[20,[96]],44],3],[[[21,[96]],[21,[96]],44],3],[[[22,[96]],[22,[96]],44],3],[[[23,[96]],[23,[96]],44],3],[[[24,[96]],[24,[96]],44],3],[[[25,[96]],[25,[96]],44],3],[[[26,[96]],[26,[96]],44],3],[[[27,[96]],[27,[96]],44],3],[[[66,[[17,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[20,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[24,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[26,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[27,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[2,35]],[[4,35]],[[5,35]],[[16,35]],[[17,35]],[[18,35]],[[19,35]],[[20,35]],[[21,35]],[[22,35]],[[23,35]],[[24,35]],[[25,35]],[[26,35]],[[27,35]],[[]],[[2,[77,[14]]],2],[[4,[77,[13]]],4],[[5,[77,[14]]],5],[[16,[77,[14]]],16],[[18,[77,[12]]],18],[[19,[77,[13]]],19],[[21,[77,[15]]],21],[[22,[77,[15]]],22],[[23,[77,[15]]],23],[[25,[77,[15]]],25],[[]],[2],[4],[5],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],0,0,[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,[[[73,[1,1]],[73,[1,1]]],3],[28],[28],[28],[[[73,[[29,[[0,[29,11]]]],[0,[29,11]]]],[0,[29,11]]]],[[[73,[29,29]],[73,[29,29]]]],[[[73,[30,30]],[73,[30,30]]]],[[[73,[[30,[[0,[30,11]]]],[0,[30,11]]]],[0,[30,11]]]],0,[[]],[[]],[[]],[[]],[73,31],[73,32],[73,31],[73,32],[[[73,[18]]],[[73,[18]]]],[[[73,[25]]],[[73,[25]]]],[[[73,[26]]],[[73,[26]]]],[[[73,[16]]],[[73,[16]]]],[[[73,[27]]],[[73,[27]]]],[[[73,[17]]],[[73,[17]]]],[[[73,[4]]],[[73,[4]]]],[[[73,[69]]],[[73,[69]]]],[[[73,[75]]],[[73,[75]]]],[[[73,[2]]],[[73,[2]]]],[[[73,[23]]],[[73,[23]]]],[[[73,[22]]],[[73,[22]]]],[[[73,[24]]],[[73,[24]]]],[[[73,[19]]],[[73,[19]]]],[[[73,[21]]],[[73,[21]]]],[[[73,[20]]],[[73,[20]]]],[[[73,[5]]],[[73,[5]]]],[[[73,[97]],[73,[97]]],[[73,[97]]]],[[[73,[97]],[73,[97]],33],[[73,[97]]]],[[]],[[]],[[]],[[]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[100,[0,[35,34]]]]],[[73,[100,[0,[35,34]]]]]],[[[73,[101,[0,[35,42]]]]]],[[[73,[[16,[102]],102]]]],[[[73,[[25,[102]],102]]]],[[[73,[[23,[102]],102]]]],[[[73,[[19,[102]],102]]]],[[[73,[[69,[102]],102]]]],[[[73,[[75,[102]],102]]]],[[[73,[[4,[102]],102]]]],[[[73,[[24,[102]],102]]]],[[[73,[[26,[102]],102]]]],[[[73,[[18,[102]],102]]]],[[[73,[[17,[102]],102]]]],[[[73,[[27,[102]],102]]]],[[[73,[[20,[102]],102]]]],[[[73,[[2,[102]],102]]]],[[[73,[[5,[102]],102]]]],[[[73,[[21,[102]],102]]]],[[[73,[[22,[102]],102]]]],[[[73,[11,11]]],[[73,[11,11]]]],[[]],[[[73,[[27,[11]],11]]],[[73,[[27,[11]],11]]]],[[[73,[[17,[11]],11]]],[[73,[[17,[11]],11]]]],[[[73,[[27,[11]],11]]],[[73,[[27,[11]],11]]]],[[[73,[[69,[11]],11]]],[[73,[[69,[11]],11]]]],[[[73,[[2,[11]],11]]],[[73,[[2,[11]],11]]]],[[[73,[[2,[11]],11]]],[[73,[[2,[11]],11]]]],[[[73,[[25,[11]],11]]],[[73,[[25,[11]],11]]]],[[[73,[[75,[11]],11]]],[[73,[[75,[11]],11]]]],[[[73,[[23,[11]],11]]],[[73,[[23,[11]],11]]]],[[[73,[[16,[11]],11]]],[[73,[[16,[11]],11]]]],[[[73,[[75,[11]],11]]],[[73,[[75,[11]],11]]]],[[[73,[[19,[11]],11]]],[[73,[[19,[11]],11]]]],[[[73,[[16,[11]],11]]],[[73,[[16,[11]],11]]]],[[[73,[[22,[11]],11]]],[[73,[[22,[11]],11]]]],[[[73,[[4,[11]],11]]],[[73,[[4,[11]],11]]]],[[[73,[[22,[11]],11]]],[[73,[[22,[11]],11]]]],[[[73,[[19,[11]],11]]],[[73,[[19,[11]],11]]]],[[[73,[[4,[11]],11]]],[[73,[[4,[11]],11]]]],[[[73,[[24,[11]],11]]],[[73,[[24,[11]],11]]]],[[[73,[[25,[11]],11]]],[[73,[[25,[11]],11]]]],[[[73,[[69,[11]],11]]],[[73,[[69,[11]],11]]]],[[[73,[[26,[11]],11]]],[[73,[[26,[11]],11]]]],[[[73,[[24,[11]],11]]],[[73,[[24,[11]],11]]]],[[[73,[[17,[11]],11]]],[[73,[[17,[11]],11]]]],[[[73,[[20,[11]],11]]],[[73,[[20,[11]],11]]]],[[[73,[[18,[11]],11]]],[[73,[[18,[11]],11]]]],[[[73,[[26,[11]],11]]],[[73,[[26,[11]],11]]]],[[[73,[[21,[11]],11]]],[[73,[[21,[11]],11]]]],[[[73,[[5,[11]],11]]],[[73,[[5,[11]],11]]]],[[[73,[[21,[11]],11]]],[[73,[[21,[11]],11]]]],[[[73,[[20,[11]],11]]],[[73,[[20,[11]],11]]]],[[[73,[[23,[11]],11]]],[[73,[[23,[11]],11]]]],[[[73,[[18,[11]],11]]],[[73,[[18,[11]],11]]]],[[[73,[[5,[11]],11]]],[[73,[[5,[11]],11]]]],0,[[]],[[]],[[[73,[[26,[84]],84]]],[[73,[[26,[84]],84]]]],[[[73,[[23,[84]],84]]],[[73,[[23,[84]],84]]]],[[[73,[[69,[84]],84]]],[[73,[[69,[84]],84]]]],[[[73,[[4,[84]],84]]],[[73,[[4,[84]],84]]]],[[[73,[[5,[84]],84]]],[[73,[[5,[84]],84]]]],[[[73,[[27,[84]],84]]],[[73,[[27,[84]],84]]]],[[[73,[[16,[84]],84]]],[[73,[[16,[84]],84]]]],[[[73,[[25,[84]],84]]],[[73,[[25,[84]],84]]]],[[[73,[[2,[84]],84]]],[[73,[[2,[84]],84]]]],[[[73,[[5,[84]],84]]],[[73,[[5,[84]],84]]]],[[[73,[[24,[84]],84]]],[[73,[[24,[84]],84]]]],[[[73,[[25,[84]],84]]],[[73,[[25,[84]],84]]]],[[[73,[[21,[84]],84]]],[[73,[[21,[84]],84]]]],[[[73,[[20,[84]],84]]],[[73,[[20,[84]],84]]]],[[[73,[[21,[84]],84]]],[[73,[[21,[84]],84]]]],[[[73,[[18,[84]],84]]],[[73,[[18,[84]],84]]]],[[[73,[[20,[84]],84]]],[[73,[[20,[84]],84]]]],[[[73,[[26,[84]],84]]],[[73,[[26,[84]],84]]]],[[[73,[[27,[84]],84]]],[[73,[[27,[84]],84]]]],[[[73,[[18,[84]],84]]],[[73,[[18,[84]],84]]]],[[[73,[[2,[84]],84]]],[[73,[[2,[84]],84]]]],[[[73,[[19,[84]],84]]],[[73,[[19,[84]],84]]]],[[[73,[[23,[84]],84]]],[[73,[[23,[84]],84]]]],[[[73,[[4,[84]],84]]],[[73,[[4,[84]],84]]]],[[[73,[[24,[84]],84]]],[[73,[[24,[84]],84]]]],[[[73,[[75,[84]],84]]],[[73,[[75,[84]],84]]]],[[[73,[[17,[84]],84]]],[[73,[[17,[84]],84]]]],[[[73,[[17,[84]],84]]],[[73,[[17,[84]],84]]]],[[[73,[[75,[84]],84]]],[[73,[[75,[84]],84]]]],[[[73,[[69,[84]],84]]],[[73,[[69,[84]],84]]]],[[[73,[[22,[84]],84]]],[[73,[[22,[84]],84]]]],[[[73,[[19,[84]],84]]],[[73,[[19,[84]],84]]]],[[[73,[[22,[84]],84]]],[[73,[[22,[84]],84]]]],[[[73,[[16,[84]],84]]],[[73,[[16,[84]],84]]]],[[[104,[103,103]]],105],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[],[[73,[43,35]]]],[[]],[[]],[[],44],[73],[73],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[[52,[[0,[52,11]]]],[0,[52,11]]]],[0,[52,11]]]],[[[73,[52,52]],[73,[52,52]]]],[[[73,[39,39]],[73,[39,39]]]],[[[73,[[39,[[0,[39,11]]]],[0,[39,11]]]],[0,[39,11]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[[26,[102]],102]],[0,[[106,[105]],11]]],[[104,[[108,[107]],107]]]],[[[73,[[16,[102]],102]],[0,[[106,[105]],11]]],[[104,[[109,[107]],107]]]],[[[73,[[19,[102]],102]],[0,[[106,[105]],11]]],[[104,[[110,[107]],107]]]],[[[73,[[18,[102]],102]],[0,[[106,[105]],11]]],[[104,[[111,[107]],107]]]],[[[73,[[27,[102]],102]],[0,[[106,[105]],11]]],[[104,[[112,[107]],107]]]],[[[73,[[5,[102]],102]],[0,[[106,[105]],11]]],[[104,[[113,[107]],107]]]],[[[73,[[2,[102]],102]],[0,[[106,[105]],11]]],[[104,[[114,[107]],107]]]],[[[73,[[23,[102]],102]],[0,[[106,[105]],11]]],[[104,[[115,[107]],107]]]],[[[73,[[22,[102]],102]],[0,[[106,[105]],11]]],[[104,[[116,[107]],107]]]],[[[73,[[4,[102]],102]],[0,[[106,[105]],11]]],[[104,[[117,[107]],107]]]],[[[73,[[69,[102]],102]],[0,[[106,[105]],11]]],[[104,[[118,[107]],107]]]],[[[73,[[25,[102]],102]],[0,[[106,[105]],11]]],[[104,[[119,[107]],107]]]],[[[73,[[24,[102]],102]],[0,[[106,[105]],11]]],[[104,[[120,[107]],107]]]],[[[73,[[20,[102]],102]],[0,[[106,[105]],11]]],[[104,[[121,[107]],107]]]],[[[73,[[21,[102]],102]],[0,[[106,[105]],11]]],[[104,[[122,[107]],107]]]],[[[73,[[17,[102]],102]],[0,[[106,[105]],11]]],[[104,[[123,[107]],107]]]],[[[73,[[75,[102]],102]],[0,[[106,[105]],11]]],[[104,[[124,[107]],107]]]],[[[73,[53,53]],[73,[53,53]]],3],[[],3],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[54,54]],55]],[[[73,[125,125]],57],58],[[[73,[126,126]],57],58],[[[73,[56,56]],57],58],[[]],[[],[[73,[16]]]],[[],[[73,[22]]]],[[],[[73,[26]]]],[[[31,[[73,[23]]]]],[[73,[[23,[64]],64]]]],[[[31,[[73,[18]]]]],[[73,[[18,[64]],64]]]],[[[31,[[73,[24]]]]],[[73,[[24,[64]],64]]]],[[],[[73,[4]]]],[[[31,[[73,[25]]]]],[[73,[[25,[64]],64]]]],[[[31,[[73,[75]]]]],[[73,[[75,[64]],64]]]],[[],[[73,[20]]]],[[[66,[97]]],[[73,[97]]]],[[],[[73,[24]]]],[[],[[73,[19]]]],[[],[[73,[25]]]],[[[31,[[73,[26]]]]],[[73,[[26,[64]],64]]]],[[[31,[[73,[16]]]]],[[73,[[16,[64]],64]]]],[[[31,[[73,[22]]]]],[[73,[[22,[64]],64]]]],[[],[[73,[69]]]],[[],[[73,[18]]]],[[[31,[[73,[2]]]]],[[73,[[2,[64]],64]]]],[[],[[73,[75]]]],[[[31,[[73,[69]]]]],[[73,[[69,[64]],64]]]],[[[31,[[73,[19]]]]],[[73,[[19,[64]],64]]]],[[],[[73,[35]]]],[31,73],[[[31,[[73,[27]]]]],[[73,[[27,[64]],64]]]],[31,73],[65],[31,73],[[[31,[[73,[4]]]]],[[73,[[4,[64]],64]]]],[[]],[[],[[73,[5]]]],[[],[[73,[27]]]],[[[31,[[73,[5]]]]],[[73,[[5,[64]],64]]]],[[[31,[[73,[20]]]]],[[73,[[20,[64]],64]]]],[[],[[73,[2]]]],[[],[[73,[17]]]],[[[31,[[73,[17]]]]],[[73,[[17,[64]],64]]]],[[[31,[[73,[21]]]]],[[73,[[21,[64]],64]]]],[[]],[[]],[[]],[[],68],[127,73],[[],86],[[],[[73,[2]]]],[[],[[73,[69]]]],[[],[[73,[16]]]],[[],[[73,[22]]]],[[],[[73,[5]]]],[[],[[73,[21]]]],[[],[[73,[26]]]],[[],[[73,[25]]]],[[],[[73,[19]]]],[[],[[73,[27]]]],[[],[[73,[23]]]],[[],[[73,[75]]]],[[],[[73,[4]]]],[[],[[73,[20]]]],[[],[[73,[24]]]],[[],[[73,[17]]]],[[],[[73,[18]]]],[[[73,[[75,[74]]]]],[[73,[[75,[128]],62]]]],[[[73,[[69,[71]]]]],[[73,[[69,[[128,[129]]]],62]]]],[[[73,[21]]],[[73,[[21,[[0,[62,130]]]],62]]]],[[[73,[23]]],[[73,[[23,[[0,[62,130]]]],62]]]],[[[73,[75]]],[[73,[[75,[62]],62]]]],[[[73,[69]]],[[73,[[69,[62]],62]]]],[[[73,[2]]],[[73,[[2,[[0,[62,130]]]],62]]]],[[[73,[16]]],[[73,[[16,[[0,[62,130]]]],62]]]],[[[73,[5]]],[[73,[[5,[[0,[62,130]]]],62]]]],[[[73,[[22,[[0,[8,67]]]]]]],[[73,[[22,[[0,[[62,[[0,[8,67]]]],[130,[[0,[8,67]]]]]]]],62]]]],[55,[[73,[[0,[54,131]],[0,[54,43]]]]]],[[[73,[[69,[128]]]]],[[73,[[69,[71]],62]]]],[[[73,[[75,[128]]]]],[[73,[[75,[74]],62]]]],[[]],[[]],[132,[[73,[[75,[133]],133]]]],[44,[[73,[[69,[133]],133]]]],[[[73,[[2,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[2]]]]]],[[[73,[[20,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[20]]]]]],[[[73,[[25,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[25]]]]]],[[[73,[[75,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[75]]]]]],[[[73,[[24,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[24]]]]]],[[[73,[[21,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[21]]]]]],[[[73,[[16,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[16]]]]]],[[[73,[[17,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[17]]]]]],[[[73,[[4,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[4]]]]]],[[[73,[[69,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[69]]]]]],[[[73,[[23,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[23]]]]]],[[[73,[[26,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[26]]]]]],[[[73,[[19,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[19]]]]]],[[[73,[[18,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[18]]]]]],[[[73,[[27,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[27]]]]]],[[[73,[[5,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[5]]]]]],[[[73,[[22,[[134,[32]]]],[134,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[22]]]]]],[[[73,[137]]]],[[[73,[[5,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[5]]]]]],[[[73,[[16,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[16]]]]]],[[[73,[[75,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[75]]]]]],[[[73,[[20,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[20]]]]]],[[[73,[[21,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[21]]]]]],[[[73,[[25,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[25]]]]]],[[[73,[[18,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[18]]]]]],[[[73,[[17,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[17]]]]]],[[[73,[[2,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[2]]]]]],[[[73,[[69,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[69]]]]]],[[[73,[[19,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[19]]]]]],[[[73,[[27,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[27]]]]]],[[[73,[[26,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[26]]]]]],[[[73,[[4,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[4]]]]]],[[[73,[[23,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[23]]]]]],[[[73,[[24,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[24]]]]]],[[[73,[[22,[[138,[32]]]],[138,[32]]]],[0,[[135,[32]],[135,[32]],11]]],[[136,[[73,[22]]]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[97]],[73,[97]]],[[73,[97]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[]],[[]],[[],86],[[[73,[2]]]],[[[73,[19]]]],[[[73,[21]]]],[[[73,[16]]]],[[[73,[17]]]],[[[73,[23]]]],[[[73,[4]]]],[[[73,[25]]]],[[[73,[26]]]],[[[73,[27]]]],[[[73,[22]]]],[[[73,[69]]]],[[[73,[24]]]],[[[73,[5]]]],[[[73,[20]]]],[[[73,[18]]]],[[[73,[75]]]],[[[73,[[75,[128]]]]],[[73,[[75,[74]],62]]]],[[[73,[[69,[[128,[129]]]]]]],[[73,[[69,[71]],62]]]],[[[73,[69]]],[[73,[[69,[62]],62]]]],[[[73,[2]]],[[73,[[2,[[0,[62,130]]]],62]]]],[[[73,[75]]],[[73,[[75,[62]],62]]]],[[[73,[23]]],[[73,[[23,[[0,[62,130]]]],62]]]],[[[73,[5]]],[[73,[[5,[[0,[62,130]]]],62]]]],[[[73,[22]]],[[73,[[22,[[0,[62,130]]]],62]]]],[[[73,[16]]],[[73,[[16,[[0,[62,130]]]],62]]]],[[[73,[21]]],[[73,[[21,[[0,[62,130]]]],62]]]],[[]],[73],[73],[[[73,[55,55]]]],[[[73,[[75,[74]]]]],[[73,[[75,[128]],62]]]],[[[73,[[69,[71]]]]],[[73,[[69,[128]],62]]]],[[]],[[]],[[[73,[[75,[133]],133]]],132],[[[73,[[69,[133]],133]]],44],[[[73,[139,[0,[35,38,139]]]]]],[73],[73],[[[104,[140,140]]],105],[[[73,[141]]],[[73,[141]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[142]]]],[[[73,[141]]],[[73,[141]]]],[[[73,[142]]]],[[],35],[[],35],[[[73,[143]],[73,[143]]],[[73,[143]]]],[[[73,[144]],[73,[144]]]],[[[73,[[51,[[0,[51,11]]]],[0,[51,11]]]],[0,[51,11]]]],[[[73,[51,51]],[73,[51,51]]]],[[[73,[[89,[[0,[89,11]]]],[0,[89,11]]]],[0,[89,11]]]],[[[73,[89,89]],[73,[89,89]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[77,[14]]],[[73,[5]]]],[[],[[73,[69]]]],[[[77,[15]]],[[73,[25]]]],[[[77,[13]]],[[73,[19]]]],[[],[[73,[75]]]],[[[77,[14]]],[[73,[2]]]],[[[77,[15]]],[[73,[21]]]],[[[77,[15]]],[[73,[23]]]],[[],[[73,[24]]]],[[],[[73,[27]]]],[[[77,[12]]],[[73,[18]]]],[[],[[73,[20]]]],[[[77,[14]]],[[73,[16]]]],[[[77,[13]]],[[73,[4]]]],[[],[[73,[26]]]],[[],[[73,[17]]]],[[[77,[15]]],[[73,[22]]]],[14,[[73,[2]]]],[15,[[73,[21]]]],[14,[[73,[5]]]],[13,[[73,[4]]]],[15,[[73,[25]]]],[13,[[73,[19]]]],[14,[[73,[16]]]],[12,[[73,[18]]]],[15,[[73,[23]]]],[15,[[73,[22]]]],[[[77,[14]]],[[73,[[2,[145]]]]]],[[[77,[14]]],[[73,[[5,[145]]]]]],[[[77,[14]]],[[73,[[16,[145]]]]]],[14,[[73,[[16,[145]]]]]],[14,[[73,[[2,[145]]]]]],[14,[[73,[[5,[145]]]]]],[[[104,[103,103]]],136],[[[104,[146,146]]],136],[[]],[[[73,[97]],[73,[97]]],[[73,[97]]]],[[[73,[97]],[73,[97]]],[[73,[97]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[97]],[73,[97]]],[[73,[97]]]],[[[73,[[25,[102]],102]]],[[136,[[73,[25]]]]]],[[[73,[[20,[102]],102]]],[[136,[[73,[20]]]]]],[[[73,[[18,[102]],102]]],[[136,[[73,[18]]]]]],[[[73,[[16,[102]],102]]],[[136,[[73,[16]]]]]],[[[73,[[75,[102]],102]]],[[136,[[73,[75]]]]]],[[[73,[[23,[102]],102]]],[[136,[[73,[23]]]]]],[[[73,[[5,[102]],102]]],[[136,[[73,[5]]]]]],[[[73,[[69,[102]],102]]],[[136,[[73,[69]]]]]],[[[73,[[22,[102]],102]]],[[136,[[73,[22]]]]]],[[[73,[[19,[102]],102]]],[[136,[[73,[19]]]]]],[[[73,[[17,[102]],102]]],[[136,[[73,[17]]]]]],[[[73,[[27,[102]],102]]],[[136,[[73,[27]]]]]],[[[73,[[21,[102]],102]]],[[136,[[73,[21]]]]]],[[[73,[[2,[102]],102]]],[[136,[[73,[2]]]]]],[[[73,[[26,[102]],102]]],[[136,[[73,[26]]]]]],[[[73,[[4,[102]],102]]],[[136,[[73,[4]]]]]],[[[73,[[24,[102]],102]]],[[136,[[73,[24]]]]]],[[[73,[97]]],[[66,[97]]]],[[[73,[[69,[102]],102]],[73,[69]]]],[[[73,[[26,[102]],102]],[73,[26]]]],[[[73,[[21,[102]],102]],[73,[21]]]],[[[73,[[20,[102]],102]],[73,[20]]]],[[[73,[[23,[102]],102]],[73,[23]]]],[[[73,[[24,[102]],102]],[73,[24]]]],[[[73,[[16,[102]],102]],[73,[16]]]],[[[73,[[2,[102]],102]],[73,[2]]]],[[[73,[[25,[102]],102]],[73,[25]]]],[[[73,[[4,[102]],102]],[73,[4]]]],[[[73,[[18,[102]],102]],[73,[18]]]],[[[73,[[19,[102]],102]],[73,[19]]]],[[[73,[[75,[102]],102]],[73,[75]]]],[[[73,[[22,[102]],102]],[73,[22]]]],[[[73,[[5,[102]],102]],[73,[5]]]],[[[73,[[17,[102]],102]],[73,[17]]]],[[[73,[[27,[102]],102]],[73,[27]]]],[[[73,[90,90]],[73,[90,90]]],3],[[[73,[147]]],[[73,[147]]]],[[[73,[148]]]],[[[73,[147]]],[[73,[147]]]],[[[73,[148]]]],[[[73,[91,91]],[73,[91,91]]]],[[[73,[[91,[[0,[91,11]]]],[0,[91,11]]]],[0,[91,11]]]],[[[73,[92,92]],[73,[92,92]]]],[[[73,[[92,[[0,[92,11]]]],[0,[92,11]]]],[0,[92,11]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[[73,[26]],[73,[26]]]],[[[73,[2]],[73,[2]]]],[[[73,[4]],[73,[4]]]],[[[73,[18]],[73,[18]]]],[[[73,[21]],[73,[21]]]],[[[73,[20]],[73,[20]]]],[[[73,[75]],[73,[75]]]],[[[73,[16]],[73,[16]]]],[[[73,[22]],[73,[22]]]],[[[73,[24]],[73,[24]]]],[[[73,[27]],[73,[27]]]],[[[73,[25]],[73,[25]]]],[[[73,[5]],[73,[5]]]],[[[73,[23]],[73,[23]]]],[[[73,[17]],[73,[17]]]],[[[73,[69]],[73,[69]]]],[[[73,[19]],[73,[19]]]],[[[73,[149]]]],[[[73,[150]]],[[73,[150]]]],[[[73,[151]]]],[[[104,[103,103]]]],[[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]],[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]],[[73,[[0,[97,98,99,11]],[0,[36,8,37,67,34,45,49,40,38,11]]]]]],[[]],[73],[[[73,[10,10]],[73,[10,10]]]],[[[73,[[10,[[0,[10,11]]]],[0,[10,11]]]],[0,[10,11]]]],[[[73,[88,88]],[73,[88,88]]]],[[[73,[[88,[[0,[88,11]]]],[0,[88,11]]]],[0,[88,11]]]],[[]],[[]],[[],93],[[],93],[[],93],[32,[[93,[73]]]],[[],93],[32,[[93,[73]]]],[[],[[93,[94]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[[[73,[96,96]],[73,[96,96]],44],3],[[]],[73],[105,[[73,[[16,[102]],102]]]],[105,[[73,[[18,[102]],102]]]],[105,[[73,[[4,[102]],102]]]],[105,[[73,[[26,[102]],102]]]],[105,[[73,[[24,[102]],102]]]],[105,[[73,[[5,[102]],102]]]],[105,[[73,[[75,[102]],102]]]],[105,[[73,[[22,[102]],102]]]],[105,[[73,[[21,[102]],102]]]],[105,[[73,[[17,[102]],102]]]],[105,[[73,[[2,[102]],102]]]],[105,[[73,[[27,[102]],102]]]],[105,[[73,[[25,[102]],102]]]],[105,[[73,[[20,[102]],102]]]],[105,[[73,[[69,[102]],102]]]],[105,[[73,[[19,[102]],102]]]],[105,[[73,[[23,[102]],102]]]],[[[73,[152]]],[[73,[152]]]],[[[73,[26]]],[[73,[26]]]],[[[73,[27]]],[[73,[27]]]],[[]],[73],[[[73,[97]],[73,[97]]],[[73,[97]]]],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[66,[[0,[1,97]]]],[66,[[0,[1,97]]]]],3],[28],[28],[28],[28],[28],[[[66,[[0,[[29,[76]],97]]]],76]],[[[66,[[0,[[29,[153]],97]]]],153]],[[[66,[[0,[29,97]]]],[66,[[0,[29,97]]]]]],[[[66,[[0,[30,97]]]],[66,[[0,[30,97]]]]]],[[[66,[[0,[[30,[153]],97]]]],153]],[[[66,[[0,[[30,[76]],97]]]],76]],0,0,0,[[66,66],66],[[154,[66,[[0,[11,97,51,[51,[[0,[36,37,8,67,45,70,40,11]]]],99]]]],[66,[[0,[11,97,51,[51,[[0,[36,37,8,67,45,70,40,11]]]],99]]]]],[[66,[[0,[11,97,51,[51,[[0,[36,37,8,67,45,70,40,11]]]],99]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[97]]],32],[[[66,[97]]],31],[[[66,[97]]],32],[[[66,[97]]],31],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[33],[[[66,[97]],[66,[97]],33],[[66,[97]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[154,154],[155,155],[156,156],[157,157],[[[66,[[0,[11,97]]]]],[[66,[[0,[11,97]]]]]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[],[[66,[[0,[43,97]]]]]],[[]],[[]],[[],44],[[[66,[97]]],97],[[[66,[97]]],97],0,[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[[66,[[0,[[52,[153]],97]]]],153]],[[[66,[[0,[52,97]]]],[66,[[0,[52,97]]]]]],[[[66,[[0,[[52,[76]],97]]]],76]],[[[66,[[0,[[39,[76]],97]]]],76]],[[[66,[[0,[[39,[153]],97]]]],153]],[[[66,[[0,[39,97]]]],[66,[[0,[39,97]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[154,154],3],[[155,155],3],[[156,156],3],[[157,157],3],[[[66,[[0,[53,97]]]],[66,[[0,[53,97]]]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[154,57],58],[[155,57],58],[[156,57],58],[[157,57],58],[[[66,[[0,[56,97]]]],57],58],[[]],[[]],[[]],[[]],[[[31,[[66,[27]]]]],[[66,[[27,[64]]]]]],[31,[[66,[97]]]],[[[31,[[66,[69]]]]],[[66,[[69,[64]]]]]],[[[73,[97]]],[[66,[97]]]],[[[31,[[66,[24]]]]],[[66,[[24,[64]]]]]],[[]],[[[31,[[66,[26]]]]],[[66,[[26,[64]]]]]],[97,[[66,[97]]]],[65],[31,[[66,[97]]]],[[[31,[[66,[20]]]]],[[66,[[20,[64]]]]]],[[[31,[[66,[75]]]]],[[66,[[75,[64]]]]]],[31,[[66,[97]]]],[[[31,[[66,[17]]]]],[[66,[[17,[64]]]]]],[[]],[[]],[[]],[[]],[[]],[[155,155],154],[[157,157],154],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[[66,[[0,[143,97]]]],[66,[[0,[143,97]]]],[0,[36,8,37,34,40,11]]],[[66,[[0,[143,97]]]]]],[[[66,[[0,[144,97]]]],[66,[[0,[144,97]]]],[0,[36,8,37,34,40,30,11]]]],[[[66,[[0,[51,97]]]],[66,[[0,[51,97]]]]]],[[[66,[[0,[[51,[76]],97]]]],76]],[[[66,[[0,[[51,[153]],97]]]],153]],[[[66,[[0,[[89,[76]],97]]]],76]],[[[66,[[0,[[89,[153]],97]]]],153]],[[[66,[[0,[89,97]]]],[66,[[0,[89,97]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[97,[[66,[97]]]],[97,[[66,[97]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[],66],[[[66,[[0,[90,97]]]],[66,[[0,[90,97]]]]],3],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],0,[[[66,[[0,[10,97]]]],[66,[[0,[10,97]]]]]],[[[66,[[0,[[10,[153]],97]]]],153]],[[[66,[[0,[[10,[76]],97]]]],76]],[[[66,[[0,[88,97]]]],[66,[[0,[88,97]]]]]],[[[66,[[0,[[88,[153]],97]]]],153]],[[[66,[[0,[[88,[76]],97]]]],76]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[32,[[93,[[66,[97]]]]]],[[],93],[32,[[93,[[66,[97]]]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[96,97]]]],[66,[[0,[96,97]]]],44],3],[66],[[[66,[97]]],[[73,[97]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],0,0,0,0,0,0,[3],[[],3],[[],3],[[158,158]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[159,[31]]],32],[[[159,[31]]],31],[159],[[[159,[31]]],32],[159],[[[159,[31]]],31],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[160,160],[[[161,[11]]],[[161,[11]]]],[[[162,[11]]],[[162,[11]]]],[163,163],[[[159,[11]]],[[159,[11]]]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[160,160],3],[[[161,[53]],[161,[53]]],3],[[[162,[53]],[162,[53]]],3],[[163,163],3],[[[159,[53,53]],[159,[53,53]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[160,57],58],[[160,57],58],[[161,57],58],[[161,57],58],[[162,57],58],[[162,57],58],[[163,57],58],[[[159,[56,56]],57],58],[[]],[[]],[[]],[[]],[31,[[159,[31]]]],[[[138,[[159,[[138,[[159,[[138,[159]]]]]]]]]]],[[159,[[138,[[159,[[138,[[159,[[138,[159]]]]]]]]]]]]]],[31,[[159,[31]]]],[164,[[159,[[165,[164]]]]]],[75,[[159,[[165,[166]]]]]],[69,[[159,[[165,[164]]]]]],[31,[[159,[31]]]],[[[134,[[159,[[134,[[159,[[134,[159]]]]]]]]]]],[[159,[[134,[[159,[[134,[[159,[[134,[159]]]]]]]]]]]]]],[[],159],[[]],[166,[[159,[[165,[166]]]]]],[[]],[[]],[[]],[[]],[[]],[[],99],[31,[[31,[99]]]],[167,[[167,[99]]]],[[],99],[[],99],[32,[[32,[99]]]],[[[167,[32]]],[[167,[[32,[99]]]]]],[32,[[32,[99]]]],[102,[[102,[99]]]],[[]],[31,[[31,[99]]]],[32,[[32,[99]]]],[[[167,[32]]],[[167,[[32,[99]]]]]],[32,[[32,[99]]]],[102,[[102,[99]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],168],[31,[[31,[168]]]],[[],168],[[],168],[32,[[32,[168]]]],[[[167,[32]]],[[167,[[32,[168]]]]]],[32,[[32,[168]]]],[102,[[102,[168]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[99],[[[31,[99]]],31],[[[167,[99]]],167],[99],[99],[[[32,[99]]],32],[[[167,[[32,[99]]]]],[[167,[32]]]],[[[32,[99]]],32],[[[102,[99]]],102],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[31,[99]]],31],[[[32,[99]]],32],[[[167,[[32,[99]]]]],[[167,[32]]]],[[[32,[99]]],32],[[[102,[99]]],102],[[]],[[]],[[]],[[]],[[]],[[]],[168],[[[31,[168]]],31],[168],[168],[[[32,[168]]],32],[[[167,[[32,[168]]]]],[[167,[32]]]],[[[32,[168]]],32],[[[102,[168]]],102],[[]],0,[[[167,[[32,[99]]]],169],[[167,[[32,[99]]]]]],[[[102,[99]],169],[[102,[99]]]],[[]],[[],[[159,[165]]]],[[]],[[]],[[]],[[]],[[]],[[],170],[[],170],[[],170],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[32,[[93,[[159,[31]]]]]],[32,[[93,[[159,[31]]]]]],[32,[[93,[[32,[99]],160]]]],[[[167,[32]]],[[93,[[167,[[32,[99]]]],161]]]],[32,[[93,[[32,[99]],160]]]],[102,[[93,[[102,[99]],162]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[159,[165]]]],0,0,0,0,0,0,0,0,0,0,[[]],[28],[[]],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[26,[171]],[26,[171]]],172],[[],173],[174,[[173,[[0,[36,8,40,11]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[175,[83]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[94],[[]],[[]],[[]],[[[68,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[68,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[94,[56]]],179],[[[68,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[94,57],58],[[[94,[56]],57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[]],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[86,[[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[68,[[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[]],[[]],[[]],[[]],[[],68],[[]],[[]],[[]],[[]],[[],86],[[]],[[]],[[]],[[[68,[[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[86,[[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[68,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]],[[0,[[176,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]],177]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]],[[0,[[178,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]],177]]]],[[[68,[[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[68,[[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[68,[[0,[[176,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[176,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[68,[[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[86,[[0,[[178,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[178,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[86,[[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[],170],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],0,[[]],0,0,0,0,0,0,0,[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[181,[11,[0,[11,180]]]]],[[181,[11,[0,[11,180]]]]]],[[[182,[[0,[11,180]]]]],[[182,[[0,[11,180]]]]]],[183,183],[[]],[[]],[[]],[[]],[[]],[[]],[[[181,[53,[0,[53,180]]]],[181,[53,[0,[53,180]]]]],3],[[[182,[[0,[53,180]]]],[182,[[0,[53,180]]]]],3],[[183,183],3],[[],3],[[],3],[[],3],[[[181,[56,[0,[56,180]]]],57],58],[[[182,[[0,[56,180]]]],57],58],[[183,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,79]]],[[0,[36,79]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,37,79,52]]],[[0,[36,37,79,52]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[128,[11]]],[[128,[11]]]],[184,184],[[]],[[]],[[]],[[]],[[[128,[53]],[128,[53]]],3],[[184,184],3],[[],3],[[],3],[[[128,[56]],57],58],[[184,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],0,[28],[[]],[[]],[[],[[27,[171,36]]]],[[]],[[]],[145,145],[[]],[[]],[[145,145],3],[[],3],[[145,57],58],[[]],[[]],[76,133],[153,133],[[[0,[36,79,185,40,38,11]]],[[0,[36,79,185,40,38,11]]]],[[]],[[],[[27,[171,36]]]],[[]],[[]],[[]],[[]],[133,76],[[[0,[36,79,186,40,38,11]]],[[0,[36,79,186,40,38,11]]]],[133,153],[[]],[[],[[27,[171,36]]]],[[],[[136,[[172,[76]]]]]],[[]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[[],[[136,[[172,[76]]]]]],0,0,0,[28],[[]],[[]],[2,2],[[]],[[]],[[[2,[102]]]],[[[2,[11]]],[[2,[11]]]],[[[2,[11]]],[[2,[11]]]],[[]],[[[2,[84]]],[[2,[84]]]],[[[2,[84]]],[[2,[84]]]],[[[114,[103]]],105],[[[2,[102]],[0,[[106,[105]],11]]],[[114,[107]]]],[[]],[[]],[[],2],[2,[[2,[[0,[62,130]]]]]],[[]],[[[2,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[2]]]],[[[2,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[2]]]],0,[[]],[[]],[[]],[[]],[2],[2,[[2,[[0,[62,130]]]]]],[[]],[[]],[2],[2],[[[114,[140]]],105],0,[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],2],[14,2],[[[77,[14]]],[[2,[145]]]],[14,[[2,[145]]]],[[[114,[103]]],136],[[[114,[146]]],136],[[[2,[102]]],[[136,[2]]]],[[[2,[102]],2]],0,[[2,2]],[[[114,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[2,[102]]]],0,0,0,[28],[[]],[[]],[4,4],[[]],[[]],[[[4,[102]]]],[[[4,[11]]],[[4,[11]]]],[[[4,[11]]],[[4,[11]]]],[[]],[[[4,[84]]],[[4,[84]]]],[[[4,[84]]],[[4,[84]]]],[[[117,[103]]],105],[[[4,[102]],[0,[[106,[105]],11]]],[[117,[107]]]],[[]],[[]],[[],4],[[]],[[[4,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[4]]]],[[[4,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[4]]]],0,[[]],[[]],[[]],[[]],[4],[[]],[[]],[4],[4],0,[[[117,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[13]]],4],[13,4],[[[117,[103]]],136],[[[117,[146]]],136],[[[4,[102]]],[[136,[4]]]],[[[4,[102]],4]],0,[[4,4]],[[[117,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[4,[102]]]],0,0,0,[28],[[]],[[]],[5,5],[[]],[[]],[[[5,[102]]]],[[[5,[11]]],[[5,[11]]]],[[[5,[11]]],[[5,[11]]]],[[]],[[[5,[84]]],[[5,[84]]]],[[[5,[84]]],[[5,[84]]]],[[[113,[103]]],105],[[[5,[102]],[0,[[106,[105]],11]]],[[113,[107]]]],[[]],[[]],[[],5],[5,[[5,[[0,[62,130]]]]]],[[]],[[[5,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[5]]]],[[[5,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[5]]]],0,[[]],[[]],[[]],[[]],[5],[5,[[5,[[0,[62,130]]]]]],[[]],[[]],[5],[5],[[[113,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],5],[14,5],[[[77,[14]]],[[5,[145]]]],[14,[[5,[145]]]],[[[113,[103]]],136],[[[113,[146]]],136],[[[5,[102]]],[[136,[5]]]],[[[5,[102]],5]],0,[[5,5]],[[[113,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[5,[102]]]],0,0,0,0,0,0,0,0,[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,12],[13,13],[14,14],[15,15],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[102]]]],[[[13,[102]]]],[[[14,[102]]]],[[[15,[102]]]],[[[12,[11]]],[[12,[11]]]],[[[12,[11]]],[[12,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[15,[11]]],[[15,[11]]]],[[[15,[11]]],[[15,[11]]]],[[]],[[]],[[]],[[]],[[[12,[84]]],[[12,[84]]]],[[[12,[84]]],[[12,[84]]]],[[[13,[84]]],[[13,[84]]]],[[[13,[84]]],[[13,[84]]]],[[[14,[84]]],[[14,[84]]]],[[[14,[84]]],[[14,[84]]]],[[[15,[84]]],[[15,[84]]]],[[[15,[84]]],[[15,[84]]]],[[[187,[103]]],105],[[[188,[103]]],105],[[[189,[103]]],105],[[[190,[103]]],105],[[[12,[102]],[0,[[106,[105]],11]]],[[187,[107]]]],[[[13,[102]],[0,[[106,[105]],11]]],[[188,[107]]]],[[[14,[102]],[0,[[106,[105]],11]]],[[189,[107]]]],[[[15,[102]],[0,[[106,[105]],11]]],[[190,[107]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[12,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[13,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[14,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[15,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[6,[[12,[6]]]],[6,[[13,[6]]]],[6,[[14,[6]]]],[6,[[15,[6]]]],[12,[[12,[130]]]],[13,[[13,[130]]]],[14,[[14,[130]]]],[15,[[15,[130]]]],[6,[[12,[6]]]],[6,[[13,[6]]]],[6,[[14,[6]]]],[6,[[15,[6]]]],[[]],[[]],[[]],[[]],[[[12,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[12]]]],[[[13,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[13]]]],[[[14,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[14]]]],[[[15,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[15]]]],[[[12,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[12]]]],[[[13,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[13]]]],[[[14,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[14]]]],[[[15,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[15]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[[0,[6,48]]]]]],[[[13,[[0,[6,48]]]]]],[[[14,[[0,[6,48]]]]]],[[[15,[[0,[6,48]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[[0,[6,7]]]]],[[0,[6,7]]]],[[[13,[[0,[6,7]]]]],[[0,[6,7]]]],[[[14,[[0,[6,7]]]]],[[0,[6,7]]]],[[[15,[[0,[6,7]]]]],[[0,[6,7]]]],[12,[[12,[130]]]],[13,[[13,[130]]]],[14,[[14,[130]]]],[15,[[15,[130]]]],[12],[13],[14],[15],[[]],[[]],[[]],[[]],[[[12,[[0,[6,191]]]]],[[0,[6,191]]]],[[[13,[[0,[6,191]]]]],[[0,[6,191]]]],[[[14,[[0,[6,191]]]]],[[0,[6,191]]]],[[[15,[[0,[6,191]]]]],[[0,[6,191]]]],[[[12,[[0,[6,191]]]]],[[0,[6,191]]]],[[[13,[[0,[6,191]]]]],[[0,[6,191]]]],[[[14,[[0,[6,191]]]]],[[0,[6,191]]]],[[[15,[[0,[6,191]]]]],[[0,[6,191]]]],[[[12,[[0,[6,7]]]]],[[0,[6,7]]]],[[[13,[[0,[6,7]]]]],[[0,[6,7]]]],[[[14,[[0,[6,7]]]]],[[0,[6,7]]]],[[[15,[[0,[6,7]]]]],[[0,[6,7]]]],[[[12,[6]]],6],[[[13,[6]]],6],[[[14,[6]]],6],[[[15,[6]]],6],[[[12,[6]]],6],[[[13,[6]]],6],[[[14,[6]]],6],[[[15,[6]]],6],[[]],[[]],[[]],[[]],[12],[13],[14],[15],[12],[13],[14],[15],[[[187,[140]]],105],[[[188,[140]]],105],[[[189,[140]]],105],[[[190,[140]]],105],[[],12],[[],13],[[],14],[[],15],[[[187,[103]]],136],[[[188,[103]]],136],[[[189,[103]]],136],[[[190,[103]]],136],[[[187,[146]]],136],[[[188,[146]]],136],[[[189,[146]]],136],[[[190,[146]]],136],[[[12,[102]]],[[136,[12]]]],[[[13,[102]]],[[136,[13]]]],[[[14,[102]]],[[136,[14]]]],[[[15,[102]]],[[136,[15]]]],[[[12,[102]],12]],[[[13,[102]],13]],[[[14,[102]],14]],[[[15,[102]],15]],[[12,12]],[[13,13]],[[14,14]],[[15,15]],[[[187,[103]]]],[[[188,[103]]]],[[[189,[103]]]],[[[190,[103]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[105,[[12,[102]]]],[105,[[13,[102]]]],[105,[[14,[102]]]],[105,[[15,[102]]]],0,0,0,[28],[[]],[[]],[16,16],0,[[]],[[]],[[[16,[102]]]],[[[16,[11]]],[[16,[11]]]],[[[16,[11]]],[[16,[11]]]],[[]],[[[16,[84]]],[[16,[84]]]],[[[16,[84]]],[[16,[84]]]],[[[109,[103]]],105],[[[16,[102]],[0,[[106,[105]],11]]],[[109,[107]]]],[[]],[[]],[[],16],[16,[[16,[[0,[62,130]]]]]],[[]],[[[16,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[16]]]],[[[16,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[16]]]],0,[[]],[[]],[[]],[[]],[16],[16,[[16,[[0,[62,130]]]]]],[[]],[[]],[16],[16],[[[109,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],16],[14,16],[[[77,[14]]],[[16,[145]]]],[14,[[16,[145]]]],[[[109,[103]]],136],[[[109,[146]]],136],[[[16,[102]]],[[136,[16]]]],[[[16,[102]],16]],[[16,16]],[[[109,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[16,[102]]]],0,0,0,0,[28],[[]],[[]],[17,17],0,[[]],[[]],[[[17,[102]]]],[[[17,[11]]],[[17,[11]]]],[[[17,[11]]],[[17,[11]]]],[[]],[[[17,[84]]],[[17,[84]]]],[[[17,[84]]],[[17,[84]]]],[[[123,[103]]],105],[[[17,[102]],[0,[[106,[105]],11]]],[[123,[107]]]],[[]],[[]],[[],17],[[]],[[[17,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[17]]]],[[[17,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[17]]]],[[]],[[]],[[]],[[]],[17],[[]],[[]],[17],[17],0,[[[123,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],17],[[[123,[103]]],136],[[[123,[146]]],136],[[[17,[102]]],[[136,[17]]]],[[[17,[102]],17]],[[17,17]],[[[123,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[17,[102]]]],0,0,0,[28],[[]],[[]],[18,18],[[]],[[]],0,[[[18,[102]]]],[[[18,[11]]],[[18,[11]]]],[[[18,[11]]],[[18,[11]]]],[[]],[[[18,[84]]],[[18,[84]]]],[[[18,[84]]],[[18,[84]]]],[[[111,[103]]],105],[[[18,[102]],[0,[[106,[105]],11]]],[[111,[107]]]],[[]],[[]],[[],18],[[]],[[[18,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[18]]]],[[[18,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[18]]]],0,[[]],[[]],[[]],[[]],[18],[[]],[[]],[18],[18],0,[[[111,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[12]]],18],[12,18],[[[111,[103]]],136],[[[111,[146]]],136],[[[18,[102]]],[[136,[18]]]],[[[18,[102]],18]],[[18,18]],[[[111,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[18,[102]]]],0,0,0,[28],[[]],[[]],[19,19],[[]],[[]],0,[[[19,[102]]]],[[[19,[11]]],[[19,[11]]]],[[[19,[11]]],[[19,[11]]]],[[]],[[[19,[84]]],[[19,[84]]]],[[[19,[84]]],[[19,[84]]]],[[[110,[103]]],105],[[[19,[102]],[0,[[106,[105]],11]]],[[110,[107]]]],[[]],[[]],[[],19],[[]],[[[19,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[19]]]],[[[19,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[19]]]],0,[[]],[[]],[[]],[[]],[19],[[]],[[]],[19],[19],0,[[[110,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[13]]],19],[13,19],[[[110,[103]]],136],[[[110,[146]]],136],[[[19,[102]]],[[136,[19]]]],[[[19,[102]],19]],[[19,19]],[[[110,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[19,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[75,[1]],[75,[1]]],3],[[[75,[1]],[75,[1]]],3],[28],[28],[28],[[[75,[[0,[29,11]]]],[0,[29,11]]]],[[[75,[29]],[75,[29]]]],[[[75,[30]],[75,[30]]]],[[[75,[[0,[30,11]]]],[0,[30,11]]]],[[]],[[]],[[]],[[]],[75],[75,31],[75,32],[75,31],[75,32],[75],[75,75],[[]],[33],[[]],[[]],[[]],[[]],0,[[[75,[[0,[34,35]]]]],[[75,[[0,[34,35]]]]]],[[[75,[[0,[42,35]]]]]],[[[75,[102]]]],[[[75,[11]]],[[75,[11]]]],[[]],[[[75,[11]]],[[75,[11]]]],[[[75,[11]]],[[75,[11]]]],[[]],[[]],[[[75,[84]]],[[75,[84]]]],[[[75,[84]]],[[75,[84]]]],[[[124,[103]]],105],[[],[[75,[35]]]],[[]],[[]],[[],44],[[[75,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[75,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[75,[52]],[75,[52]]]],[[[75,[[0,[52,11]]]],[0,[52,11]]]],[[[75,[39]],[75,[39]]]],[[[75,[[0,[39,11]]]],[0,[39,11]]]],[[[75,[102]],[0,[[106,[105]],11]]],[[124,[107]]]],[[[75,[53]],[75,[53]]],3],[[],3],[[[75,[54]],55]],[[[75,[126]],57],58],[[[75,[125]],57],58],[[[75,[56,56]],57],58],[[[159,[[165,[166]]]]],166],[132,[[166,[133]]]],[44,[[75,[44]]]],[76,[[75,[76]]]],[132,[[75,[132]]]],[[]],[133,[[75,[133]]]],[31,75],[192,[[75,[192]]]],[44,[[75,[44]]]],[133,[[75,[133]]]],[31,75],[65],[31,75],[[],75],[153,[[75,[153]]]],[[],75],[193,[[75,[193]]]],[192,[[75,[192]]]],[76,[[75,[76]]]],[[[159,[[165,[[166,[133]]]]]]],[[75,[133]]]],[132,[[75,[132]]]],[[[31,[75]]],[[75,[64]]]],[[[66,[75]]],75],[153,[[75,[153]]]],[193,[[75,[193]]]],[132,[[75,[133]]]],[[]],[[]],[[]],[[]],[[],68],[[[5,[71]]],[[75,[74]]]],[25,[[75,[74]]]],[[[2,[71]]],[[75,[74]]]],[17,[[75,[74]]]],[[[75,[74]]],[[75,[74]]]],[20,[[75,[74]]]],[[[16,[71]]],[[75,[74]]]],[21,[[75,[74]]]],[4,[[75,[74]]]],[[[73,[[72,[75]]]]],75],[24,[[75,[74]]]],[26,[[75,[74]]]],[[[69,[71]]],[[75,[74]]]],[22,[[75,[74]]]],[18,[[75,[74]]]],[19,[[75,[74]]]],[23,[[75,[74]]]],[27,[[75,[74]]]],[[],86],[[],75],[[[75,[74]]],[[75,[128]]]],[75,[[75,[62]]]],[55,[[75,[43]]]],[[[75,[128]]],[[75,[74]]]],[[]],[[]],[132,[[166,[133]]]],[132,[[75,[133]]]],[[[75,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[75]]]],[[[75,[74,[0,[36,40,38]]]],[75,[74,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[75,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[75]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[]],[[]],[[],86],[75],[[[75,[128]]],[[75,[74]]]],[75,[[75,[62]]]],[[[75,[55]]]],[75],[75],[[]],[[[75,[74]]],[[75,[128]]]],[[]],[[]],[[[166,[133]]],132],[[[75,[133]]],132],[[[75,[[0,[38,35]]]]]],[75],[75],[[[124,[140]]],105],[[[75,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[75,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[75,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[75,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[75,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[75,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],0,[[],35],[[],35],[[[75,[[0,[36,8,37,40,34,11]]]],[75,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[75,[[0,[36,8,37,40,34,11]]]]]],[[[75,[[0,[36,8,37,30,40,34,11]]]],[75,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[75,[[0,[51,11]]]],[0,[51,11]]]],[[[75,[51]],[75,[51]]]],[[[75,[[0,[89,11]]]],[0,[89,11]]]],[[[75,[89]],[75,[89]]]],[[],75],[[[124,[103]]],136],[[[124,[146]]],136],[[]],[[]],[[]],[[[75,[102]]],[[136,[75]]]],[[[75,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[75,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[75,[102]],75]],[[[75,[90]],[75,[90]]],3],[[[75,[74,[0,[36,[29,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],38,67]]]],38,67]]]]],[[75,[[128,[83]]]]]],[[[75,[90]],[75,[90]]],3],[[[75,[[0,[91,11]]]],[0,[91,11]]]],[[[75,[91]],[75,[91]]]],[[[75,[92]],[75,[92]]]],[[[75,[[0,[92,11]]]],[0,[92,11]]]],[[75,75]],[[[124,[103]]]],[75],0,[[[75,[[0,[10,11]]]],[0,[10,11]]]],[[[75,[10]],[75,[10]]]],[[[75,[[0,[88,11]]]],[0,[88,11]]]],[[[75,[88]],[75,[88]]]],[[]],[[],93],[[],93],[32,[[93,[75]]]],[[],93],[32,[[93,[75]]]],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[[[75,[96]],[75,[96]],44],3],[[[75,[96]],[75,[96]],44],3],[[[66,[[75,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[75,35]],[105,[[75,[102]]]],[75],[[]],0,0,[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[194,194],[195,195],[[]],[[]],[[]],[[]],[[194,194],3],[[195,195],3],[[],3],[[],3],[[194,57],58],[[195,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],132],[166,31],[[],132],[166,31],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[31,166],[132],[132],[31,166],0,0,0,[28],[[]],[[]],[20,20],[[]],[[]],[[[20,[102]]]],[[[20,[11]]],[[20,[11]]]],[[[20,[11]]],[[20,[11]]]],[[]],[[[20,[84]]],[[20,[84]]]],[[[20,[84]]],[[20,[84]]]],[[[121,[103]]],105],[[[20,[102]],[0,[[106,[105]],11]]],[[121,[107]]]],[[]],[[]],[[],20],[[]],[[[20,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[20]]]],[[[20,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[20]]]],[[]],[[]],[[]],[[]],[20],[[]],[[]],[20],[20],0,[[[121,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],20],[[[121,[103]]],136],[[[121,[146]]],136],[[[20,[102]]],[[136,[20]]]],[[[20,[102]],20]],[[20,20]],[[[121,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],0,[[]],[[]],0,0,[105,[[20,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[179,[[136,[[60,[133]]]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[31],[76],[[]],[[]],[[]],[[]],[[],31],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[196],[44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[28],[[]],[[]],[21,21],[[]],[[]],[[[21,[102]]]],[[[21,[11]]],[[21,[11]]]],[[[21,[11]]],[[21,[11]]]],[[]],[[[21,[84]]],[[21,[84]]]],[[[21,[84]]],[[21,[84]]]],[[[122,[103]]],105],[[[21,[102]],[0,[[106,[105]],11]]],[[122,[107]]]],[[]],[[]],[[],21],[21,[[21,[[0,[62,130]]]]]],[[]],[[[21,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[21]]]],[[[21,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[21]]]],0,[[]],[[]],[[]],[[]],[21],[21,[[21,[[0,[62,130]]]]]],[[]],[[]],[21],[21],[[[122,[140]]],105],0,[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],21],[15,21],[[[122,[103]]],136],[[[122,[146]]],136],[[[21,[102]]],[[136,[21]]]],[[[21,[102]],21]],0,[[21,21]],[[[122,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[21,[102]]]],0,0,0,[28],[[]],[[]],[22,22],[[]],[[]],[[[22,[102]]]],[[[22,[11]]],[[22,[11]]]],[[[22,[11]]],[[22,[11]]]],[[]],[[[22,[84]]],[[22,[84]]]],[[[22,[84]]],[[22,[84]]]],[[[116,[103]]],105],[[[22,[102]],[0,[[106,[105]],11]]],[[116,[107]]]],[[]],[[]],[[],22],[[]],[[[22,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[22]]]],[[[22,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[22]]]],0,[[]],[[]],[[]],[[]],[22],[22,[[22,[[0,[62,130]]]]]],[[]],[[]],[22],[22],[[[116,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],22],[15,22],[[[116,[103]]],136],[[[116,[146]]],136],[[[22,[102]]],[[136,[22]]]],[[[22,[102]],22]],0,[[22,22]],[[[116,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[22,[102]]]],0,0,0,[28],[[]],[[]],[23,23],0,[[]],[[]],[[[23,[102]]]],[[[23,[11]]],[[23,[11]]]],[[[23,[11]]],[[23,[11]]]],[[]],[[[23,[84]]],[[23,[84]]]],[[[23,[84]]],[[23,[84]]]],[[[115,[103]]],105],[[[23,[102]],[0,[[106,[105]],11]]],[[115,[107]]]],[[]],[[]],[[],23],[[]],[[[23,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[23]]]],[[[23,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[23]]]],0,[[]],[[]],[[]],[[]],[23],[23,[[23,[[0,[62,130]]]]]],[[]],[[]],[23],[23],[[[115,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],23],[15,23],[[[115,[103]]],136],[[[115,[146]]],136],[[[23,[102]]],[[136,[23]]]],[[[23,[102]],23]],[[23,23]],[[[115,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[23,[102]]]],0,0,0,0,[28],[[]],[[]],[24,24],0,[[]],[[]],[[[24,[102]]]],[[[24,[11]]],[[24,[11]]]],[[[24,[11]]],[[24,[11]]]],[[]],[[[24,[84]]],[[24,[84]]]],[[[24,[84]]],[[24,[84]]]],[[[120,[103]]],105],[[[24,[102]],[0,[[106,[105]],11]]],[[120,[107]]]],[[]],[[]],[[],24],[[]],[[[24,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[24]]]],[[[24,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[24]]]],[[]],[[]],[[]],[[]],[24],[[]],[[]],[24],[24],0,[[[120,[140]]],105],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],24],[[[120,[103]]],136],[[[120,[146]]],136],[[[24,[102]]],[[136,[24]]]],[[[24,[102]],24]],[[24,24]],[[[120,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[24,[102]]]],0,0,0,[28],[[]],[[]],[25,25],[[]],[[]],0,[[[25,[102]]]],[[[25,[11]]],[[25,[11]]]],[[[25,[11]]],[[25,[11]]]],[[]],[[[25,[84]]],[[25,[84]]]],[[[25,[84]]],[[25,[84]]]],[[[119,[103]]],105],[[[25,[102]],[0,[[106,[105]],11]]],[[119,[107]]]],[[]],[[]],[[],25],[[]],[[[25,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[25]]]],[[[25,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[25]]]],0,[[]],[[]],[[]],[[]],[25],[[]],[[]],[25],[25],0,[[[119,[140]]],105],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[[77,[15]]],25],[15,25],[[[119,[103]]],136],[[[119,[146]]],136],[[[25,[102]]],[[136,[25]]]],[[[25,[102]],25]],[[25,25]],[[[119,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[25,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[69,[1]],[69,[1]]],3],[[[69,[1]],[69,[1]]],3],[28],[28],[28],[28],[[[69,[29]],[69,[29]]]],[[[69,[[0,[29,11]]]],[0,[29,11]]]],[[[69,[[0,[30,11]]]],[0,[30,11]]]],[[[69,[30]],[69,[30]]]],[[]],[[]],[[]],[[]],[[]],[[]],[69,32],[69,31],[69,31],[69,32],[69,69],[[]],[33],[[],[[27,[171]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[[[69,[[0,[34,35]]]]],[[69,[[0,[34,35]]]]]],[[[69,[[0,[42,35]]]]]],[[[69,[102]]]],[[[69,[11]]],[[69,[11]]]],[[]],[[[69,[11]]],[[69,[11]]]],[[[69,[11]]],[[69,[11]]]],[[]],[[]],[[]],[[[69,[84]]],[[69,[84]]]],[[[69,[84]]],[[69,[84]]]],[[[118,[103]]],105],[[],[[69,[35]]]],[[]],[[]],[[],44],[[[69,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[69,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[69,[[0,[52,11]]]],[0,[52,11]]]],[[[69,[52]],[69,[52]]]],[[[69,[[0,[39,11]]]],[0,[39,11]]]],[[[69,[39]],[69,[39]]]],[[[69,[102]],[0,[[106,[105]],11]]],[[118,[107]]]],[[[69,[53]],[69,[53]]],3],[[],3],[[[69,[54]],55]],[[[69,[126]],57],58],[[[69,[56,56]],57],58],[[[69,[125]],57],58],[[197,57],58],[[197,57],58],[44,[[164,[133]]]],[[[159,[[165,[164]]]]],164],[[]],[31,69],[[[66,[69]]],69],[31,69],[[[159,[[165,[[164,[133]]]]]]],[[69,[133]]]],[[[31,[69]]],[[69,[64]]]],[[],69],[31,69],[44,[[69,[133]]]],[[]],[[]],[198,197],[179,197],[[]],[[]],[[]],[[]],[[],68],[[[24,[[0,[36,40,84]]]]],[[69,[71,[0,[36,40,84]]]]]],[18,[[69,[71]]]],[22,69],[[[2,[[0,[36,6,191,8,37,49,199,38,40,11]]]]],[[69,[[0,[36,6,191,8,37,49,199,38,40,11]]]]]],[[[73,[[72,[69]]]]],69],[17,[[69,[71]]]],[[[26,[[0,[40,85]]]]],[[69,[71,[0,[40,85]]]]]],[25,69],[23,69],[16,69],[19,[[69,[71]]]],[27,[[69,[71]]]],[4,[[69,[71]]]],[[[69,[71]]],[[69,[71]]]],[21,69],[20,[[69,[71]]]],[[[75,[74,11]]],[[69,[71,11]]]],[[[5,[[0,[36,6,191,199,8,37,49,38,40,11]]]]],[[69,[[0,[36,6,191,199,8,37,49,38,40,11]]]]]],[[],86],[[],69],[[[69,[71]]],[[69,[[128,[129]]]]]],[69,[[69,[62]]]],[55,[[69,[43]]]],[[[69,[128]]],[[69,[71]]]],[[]],[[]],[[]],[179,[[93,[[164,[133]]]]]],[179,[[93,[[69,[133]]]]]],[44,[[164,[133]]]],[44,[[69,[133]]]],[[[69,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[69]]]],[[[69,[71,[0,[36,40,38]]]],[69,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[69,[[0,[36,6,48,40,11]]]]],[[14,[[0,[36,6,48,40,11]]]]]],[[[69,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[69]]]],[[],[[27,[171]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],68],[[]],[[]],[[]],[[],86],[69],[[[69,[[128,[129]]]]],[[69,[71]]]],[69,[[69,[62]]]],[69],[69],[[[69,[55]]]],[[]],[[[69,[71]]],[[69,[128]]]],[[]],[[]],[[]],[[[164,[133]]],44],[[[69,[133]]],44],[[[69,[[0,[38,35]]]]]],[69],[69],[[[118,[140]]],105],[[[69,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[69,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[69,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[[69,[[0,[36,8,67,34,40,38,11,35]]]],[0,[36,8,67,34,40,38,11,35]]],[[69,[[0,[36,8,67,34,40,38,11,35]]]]]],[[[69,[[0,[36,8,67,42,30,40,38,11,35]]]],[0,[36,8,67,42,30,40,38,11,35]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[[69,[[0,[36,8,37,40,34,11]]]],[69,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[69,[[0,[36,8,37,40,34,11]]]]]],[[[69,[[0,[36,8,37,30,40,34,11]]]],[69,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[69,[51]],[69,[51]]]],[[[69,[[0,[51,11]]]],[0,[51,11]]]],[[[69,[89]],[69,[89]]]],[[[69,[[0,[89,11]]]],[0,[89,11]]]],[[],69],[[[118,[103]]],136],[[[118,[146]]],136],[[]],[[]],[[]],[[[69,[102]]],[[136,[69]]]],[[[69,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[69,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[69,[102]],69]],[[],[[27,[171]]]],0,[[[69,[90]],[69,[90]]],3],[[[69,[71,[0,[36,[29,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,67]]]],[52,[[0,[36,29,52,38,67]]]],38,67]]]],38,67]]]],38,67]]]]],[[75,[[128,[83]]]]]],[[[69,[90]],[69,[90]]],3],[[],[[136,[[172,[76]]]]]],[[[69,[91]],[69,[91]]]],[[[69,[[0,[91,11]]]],[0,[91,11]]]],[[[69,[[0,[92,11]]]],[0,[92,11]]]],[[[69,[92]],[69,[92]]]],[[69,69]],[[[118,[103]]]],[197,[[136,[200]]]],[69],0,[[[69,[[0,[10,11]]]],[0,[10,11]]]],[[[69,[10]],[69,[10]]]],[[[69,[88]],[69,[88]]]],[[[69,[[0,[88,11]]]],[0,[88,11]]]],[[]],[[],170],[[],93],[[],93],[[],93],[32,[[93,[69]]]],[32,[[93,[69]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[[69,[96]],[69,[96]],44],3],[[[69,[96]],[69,[96]],44],3],[[[66,[[69,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],[52,[[0,[36,35,8,70,[51,[[0,[36,35,8,70,51,52,11]]]],[52,[[0,[36,35,8,70,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[69,35]],[105,[[69,[102]]]],[69],[[]],[[],[[136,[[172,[76]]]]]],0,0,0,0,[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[201,201],[202,202],[203,203],[204,204],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[201,201],3],[[202,202],3],[[203,203],3],[[204,204],3],[[],3],[[],3],[[],3],[[],3],[[201,57],58],[[202,57],58],[[203,57],58],[[204,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],44],[164,31],[164,31],[[],44],[164,31],[[],44],[[],44],[164,31],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[31,164],[44],[31,164],[44],[31,164],[44],[31,164],[44],0,0,0,0,[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[171,171],[205,205],[206,206],[207,207],[208,208],[209,209],[83,83],[210,210],[211,211],[212,212],[213,213],[214,214],[215,215],[216,216],[217,217],[218,218],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[171,171],3],[[205,205],3],[[206,206],3],[[207,207],3],[[208,208],3],[[209,209],3],[[83,83],3],[[210,210],3],[[211,211],3],[[212,212],3],[[213,213],3],[[214,214],3],[[215,215],3],[[216,216],3],[[217,217],3],[[218,218],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[171,57],58],[[205,57],58],[[206,57],58],[[207,57],58],[[208,57],58],[[209,57],58],[[83,57],58],[[210,57],58],[[211,57],58],[[212,57],58],[[213,57],58],[[214,57],58],[[215,57],58],[[216,57],58],[[217,57],58],[[218,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[26,[171]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[28],[[]],[[]],[26,26],[[]],[[]],[[[26,[102]]]],[[[26,[11]]],[[26,[11]]]],[[[26,[11]]],[[26,[11]]]],[[]],[[[26,[84]]],[[26,[84]]]],[[[26,[84]]],[[26,[84]]]],[[[108,[103]]],105],[[[26,[102]],[0,[[106,[105]],11]]],[[108,[107]]]],[[]],[[]],[[],26],[[]],[[[26,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[26]]]],[[[26,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[26]]]],[[]],[[]],[[]],[[]],[26],[[]],[[]],[26],[26],[[[108,[140]]],105],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],26],[[[108,[103]]],136],[[[108,[146]]],136],[[[26,[102]]],[[136,[26]]]],[[[26,[102]],26]],[[26,26]],[[[108,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[26,[102]]]],[26,26],0,0,0,0,0,0,[28],[[]],[[]],[27,27],[[]],[[]],[[[27,[102]]]],[[[27,[11]]],[[27,[11]]]],[[[27,[11]]],[[27,[11]]]],[[]],[[[27,[84]]],[[27,[84]]]],[[[27,[84]]],[[27,[84]]]],[[[112,[103]]],105],[[[27,[102]],[0,[[106,[105]],11]]],[[112,[107]]]],[[]],[[]],[[],27],[[]],[[[27,[[134,[32]]]],[0,[[135,[32]],11]]],[[136,[27]]]],[[[27,[[138,[32]]]],[0,[[135,[32]],11]]],[[136,[27]]]],[[]],[[]],[[]],[[]],[27],[[]],[[]],[27],[27],[[[112,[140]]],105],0,[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],27],[[[112,[103]]],136],[[[112,[146]]],136],[[[27,[102]]],[[136,[27]]]],[[[27,[102]],27]],[[27,27]],[[[112,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[27,[102]]]],[27,27],0,0],"c":[64,68,497,1173,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,3350,3356,3367],"p":[[8,"AbsDiffEq"],[3,"Hsl"],[15,"bool"],[3,"Hsluv"],[3,"Hsv"],[8,"RealAngle"],[8,"SignedAngle"],[8,"Zero"],[8,"AngleEq"],[8,"Sub"],[8,"Clone"],[3,"LabHue"],[3,"LuvHue"],[3,"RgbHue"],[3,"OklabHue"],[3,"Hwb"],[3,"Lab"],[3,"Lch"],[3,"Lchuv"],[3,"Luv"],[3,"Okhsl"],[3,"Okhsv"],[3,"Okhwb"],[3,"Oklab"],[3,"Oklch"],[3,"Xyz"],[3,"Yxy"],[8,"TransformMatrix"],[8,"Add"],[8,"AddAssign"],[15,"array"],[15,"slice"],[8,"BlendFunction"],[8,"Clamp"],[8,"Stimulus"],[8,"Real"],[8,"One"],[8,"PartialCmp"],[8,"DivAssign"],[8,"Arithmetics"],[8,"WhitePoint"],[8,"ClampAssign"],[8,"Default"],[15,"u32"],[8,"Sqrt"],[8,"Powi"],[8,"Exp"],[8,"Trigonometry"],[8,"Abs"],[8,"Hypot"],[8,"Mul"],[8,"Div"],[8,"PartialEq"],[8,"Extend"],[8,"IntoIterator"],[8,"Debug"],[3,"Formatter"],[6,"Result"],[6,"LinSrgb"],[6,"Srgb"],[6,"LinSrgba"],[8,"FromStimulus"],[6,"Srgba"],[8,"FromScalarArray"],[15,"never"],[3,"PreAlpha"],[8,"MinMax"],[3,"FromColorMutGuard"],[3,"Rgb"],[8,"IsValidDivisor"],[8,"RgbStandard"],[8,"IntoColorUnclamped"],[3,"Alpha"],[8,"LumaStandard"],[3,"Luma"],[15,"f64"],[8,"Into"],[8,"Cbrt"],[8,"Powf"],[8,"Recip"],[8,"PartialOrd"],[8,"HasBoolMask"],[3,"D65"],[8,"Copy"],[8,"FromScalar"],[3,"FromColorUnclampedMutGuard"],[8,"Neg"],[8,"SubAssign"],[8,"MulAssign"],[8,"RelativeEq"],[8,"SaturatingAdd"],[8,"SaturatingSub"],[4,"Result"],[3,"OutOfBounds"],[3,"TypeId"],[8,"UlpsEq"],[8,"Premultiply"],[8,"StimulusColor"],[8,"ArrayCast"],[8,"Clamp"],[8,"ClampAssign"],[3,"Vec"],[8,"Iterator"],[3,"Iter"],[15,"usize"],[8,"RangeBounds"],[3,"Drain"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[8,"UpperHex"],[8,"LowerHex"],[8,"WithAlpha"],[3,"Linear"],[8,"RgbSpace"],[8,"FromAngle"],[8,"FromIterator"],[15,"u16"],[15,"u8"],[8,"AsRef"],[8,"SliceIndex"],[4,"Option"],[8,"GetHue"],[8,"AsMut"],[8,"IsWithinBounds"],[8,"ExactSizeIterator"],[8,"Lighten"],[8,"LightenAssign"],[8,"Mix"],[8,"MixAssign"],[3,"Srgb"],[8,"DoubleEndedIterator"],[8,"Saturate"],[8,"SaturateAssign"],[8,"SetHue"],[8,"ShiftHue"],[8,"ShiftHueAssign"],[8,"WithHue"],[15,"f32"],[3,"Equations"],[4,"Equation"],[3,"Parameters"],[4,"Parameter"],[8,"FnOnce"],[3,"Packed"],[3,"SliceCastError"],[3,"BoxedSliceCastError"],[3,"VecCastError"],[4,"VecCastErrorKind"],[6,"Rgba"],[8,"ComponentOrder"],[6,"Lumaa"],[3,"Box"],[8,"UintCast"],[8,"FnMut"],[3,"String"],[3,"Any"],[6,"Mat3"],[3,"ConeResponseMatrices"],[4,"Method"],[6,"LinLuma"],[8,"FromColorMut"],[8,"Sized"],[8,"FromColorUnclampedMut"],[15,"str"],[8,"Number"],[3,"Gamma"],[3,"GammaFn"],[3,"F2p2"],[3,"LinearFn"],[8,"MulSub"],[8,"MulAdd"],[3,"LabHueIter"],[3,"LuvHueIter"],[3,"RgbHueIter"],[3,"OklabHueIter"],[8,"UnsignedAngle"],[15,"u64"],[15,"u128"],[3,"La"],[3,"Al"],[15,"i32"],[4,"FromHexError"],[3,"ParseIntError"],[8,"Round"],[8,"Error"],[3,"Abgr"],[3,"Argb"],[3,"Bgra"],[3,"Rgba"],[3,"A"],[3,"B"],[3,"C"],[3,"D50"],[3,"D55"],[3,"D75"],[3,"E"],[3,"F2"],[3,"F7"],[3,"F11"],[3,"D50Degree10"],[3,"D55Degree10"],[3,"D65Degree10"],[3,"D75Degree10"],[8,"ArrayExt"],[8,"NextArray"],[8,"RelativeContrast"],[8,"Darken"],[8,"DarkenAssign"],[8,"Desaturate"],[8,"DesaturateAssign"],[8,"FullRotation"],[8,"HalfRotation"],[8,"IntoAngle"],[8,"BlendWith"],[8,"Compose"],[8,"Blend"],[8,"BoolMask"],[8,"LazySelect"],[8,"Select"],[8,"TryComponentsAs"],[8,"TryComponentsAsMut"],[8,"TryFromComponents"],[8,"TryComponentsInto"],[8,"ArraysAs"],[8,"ArraysAsMut"],[8,"ArraysFrom"],[8,"ArraysInto"],[8,"AsArrays"],[8,"AsArraysMut"],[8,"AsComponents"],[8,"AsComponentsMut"],[8,"AsUints"],[8,"AsUintsMut"],[8,"ComponentsAs"],[8,"ComponentsAsMut"],[8,"ComponentsFrom"],[8,"ComponentsInto"],[8,"FromArrays"],[8,"FromComponents"],[8,"FromUints"],[8,"IntoArrays"],[8,"IntoComponents"],[8,"IntoUints"],[8,"UintsAs"],[8,"UintsAsMut"],[8,"UintsFrom"],[8,"UintsInto"],[8,"AdaptFrom"],[8,"AdaptInto"],[8,"ColorDifference"],[8,"Ciede2000"],[8,"EuclideanDistance"],[8,"Wcag21RelativeContrast"],[8,"HyAb"],[8,"DeltaE"],[8,"ImprovedDeltaE"],[8,"ImprovedCiede2000"],[8,"FromColor"],[8,"FromColorUnclamped"],[8,"IntoColor"],[8,"IntoColorMut"],[8,"IntoColorUnclampedMut"],[8,"TryFromColor"],[8,"TryIntoColor"],[8,"FromLinear"],[8,"IntoLinear"],[8,"IntoScalarArray"],[8,"Powu"],[8,"Primaries"],[8,"IntoStimulus"]],"a":{"colordifference":[3349],"gray":[4330],"grey":[4330],"hsb":[22,3798],"linear":[41,42,43,44,4328,4329,5178,5179],"wcag":[64],"xyy":[94,6087]}}\ +"palette":{"doc":"A library that makes linear color calculations and …","t":"DIIIQCIIIICCCGGGGIDGDGDGQDGCCIQSDDGDGDGIIGGGGDDGGIIQIDGDGDGDDGDGIDIIQQQQQQQQQQQQQIIIGGGGIQYIDGDGMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMALLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAMMMAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMALLLLLLLLLLLLLLLLLLLFAKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLAAAMMMMMMMMMMAALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLMMMMMMMAAAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLMMAMAKLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAAAAAAALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLAKLLLLLLLKLLLLLLLKLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMKLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLLLLLLMMMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMAMMMMMMMMMKLLLLLLLLLLLLLLLKLLLLLLLLLLKLLLLLLLLLLLLLLLMMLLLLLAMMAMDQDCIQLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLKLLIIIIIIIIKKKKKKKKKNIIIQINNEDNNNNNNNEDDINQNNNNLLLLLLLLLLLLMMMKLLLLLLLLLLLLLLLKLKLLLLLLLLLLLKLLLLLLLLLLLMMMLLLLLKLLLLLLLMKLLLLLLLKLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLKLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLKLLLKLKLKLKLKLKLKLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLKLIIIIQIKKKKKQIYIIIIIIIIIIDNIIIIIQQQQIIIIIINDDIIIIQIIIIIDELLLLLKKKLLLLLKLLLLLKKKKLLLLLLKKLLLLLLLLLLMLLLLLLLLLLMKKKLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFFFFFFFKFFFFFKLLLLLFFFFFFFFKLLLLLLLLLLFFFFFFFFFKLLLLLLLLLLFFFFFKLLLLLFFFFFFFFKMFFKLLLLLLLLLKKKLLLLLLLLLLLLFFFFKLLLLLLLLLLLLLLLKKKLLLLLKLLLLLKLMMIINDEINNLKLKLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLMMLLLLLLLLLLLLLLIIIIIIIQQQQQQIKKLKKLLLLLKKKLKIIDIYIDIIIIDIILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKLLLLLLLLLLKLLLKKLLLKLLLLLLLLLLLLLLLLLKLLLKLLLLLLLLLLLLCICICCKAKAADDDISLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLLLMLLMLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLMLDGDLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLMLLMLLLLLLLMLDDDDDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLMLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLMLDDGMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLGGDGGDIGGGGGQQLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLMLLMMLRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRFIIIIIIIIIIIIIIIQQIIIIIIIIIQIIIKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKDDGLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMLLLLLLLLLLMLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLDDGLLLLMLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLDDGMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLDDGLLLLLLMLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLEGGNDGGGGGGNIQDIIGNQGGQQLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIIIKKKDDDDDDDDDDDDDDDDILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMMDDGLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLMM","n":["Alpha","ArrayExt","Clamp","ClampAssign","Color","ColorDifference","Darken","DarkenAssign","Desaturate","DesaturateAssign","FromColor","FromColorMut","FromColorMutGuard","GammaLuma","GammaLumaa","GammaSrgb","GammaSrgba","GetHue","Hsl","Hsla","Hsluv","Hsluva","Hsv","Hsva","Hue","Hwb","Hwba","IntoColor","IntoColorMut","IsWithinBounds","Item","LENGTH","Lab","LabHue","Laba","Lch","Lcha","Lchuv","Lchuva","Lighten","LightenAssign","LinLuma","LinLumaa","LinSrgb","LinSrgba","Luv","LuvHue","Luva","Mat3","Mix","MixAssign","Next","NextArray","Okhsl","Okhsla","Okhsv","Okhsva","Okhwb","Okhwba","Oklab","OklabHue","Oklaba","Oklch","Oklcha","RelativeContrast","RgbHue","Saturate","SaturateAssign","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","SetHue","ShiftHue","ShiftHueAssign","Srgb","SrgbLuma","SrgbLumaa","Srgba","WithAlpha","WithAlpha","WithAlpha","WithHue","Xyz","Xyza","Yxy","Yxya","a","a","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_eq","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","abs_diff_ne","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_from_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","add_assign","alpha","alpha","angle","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","atop","atop","atop","atop","atop","b","b","blackness","blackness","blend","blend_with","blend_with","blend_with","blend_with","blend_with","bool_mask","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","cast","chroma","chroma","chroma","chromatic_adaptation","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clamp_assign","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","color","color_difference","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","contrast_ratio","convert","darken","darken_assign","darken_fixed","darken_fixed_assign","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_epsilon","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_relative","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","default_max_ulps","delta_e","delta_e","desaturate","desaturate_assign","desaturate_fixed","desaturate_fixed_assign","difference","difference","distance_squared","distance_squared","distance_squared","distance_squared","distance_squared","div","div","div","div","div","div","div","div","div","div","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","div_assign","encoding","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","extend","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_color_unclamped_mut","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_iter","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get_color_difference","get_color_difference","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_contrast_ratio","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","get_hue","has_enhanced_contrast_large_text","has_enhanced_contrast_large_text","has_enhanced_contrast_text","has_enhanced_contrast_text","has_min_contrast_graphics","has_min_contrast_graphics","has_min_contrast_large_text","has_min_contrast_large_text","has_min_contrast_text","has_min_contrast_text","hsl","hsluv","hsv","hue","hue","hue","hue","hue","hue","hue","hue","hue","hue","hues","hwb","hybrid_distance","hybrid_distance","hybrid_distance","improved_delta_e","improved_delta_e","inside","inside","inside","inside","inside","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_color_unclamped_mut","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_iter","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","is_within_bounds","l","l","l","l","l","l","l","lab","lch","lchuv","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_assign","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lighten_fixed_assign","lightness","lightness","luma","luma","luv","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mix_assign","mul","mul","mul","mul","mul","mul","mul","mul","mul","mul","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","mul_assign","named","num","okhsl","okhsv","okhwb","oklab","oklch","opaque","outside","outside","outside","outside","outside","over","over","over","over","over","plus","plus","plus","plus","plus","premultiply","premultiply","premultiply","premultiply","premultiply","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_eq","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","relative_ne","rgb","saturate","saturate","saturate","saturate","saturate","saturate","saturate","saturate","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_assign","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturate_fixed_assign","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_add","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturating_sub","saturation","saturation","saturation","saturation","saturation","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","set_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","shift_hue_assign","split","split","split","split","split","split","split","split","split","split","split","split","split","split","split","split","standard","standard","standard","stimulus","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","sub_assign","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transparent","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_from_color","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_eq","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","ulps_ne","unpremultiply","unpremultiply","unpremultiply","unpremultiply","unpremultiply","v","value","value","white_point","white_point","white_point","white_point","white_point","white_point","white_point","white_point","whiteness","whiteness","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_alpha","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","with_hue","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","without_alpha","x","x","xor","xor","xor","xor","xor","xyz","y","y","yxy","z","Alpha","Color","Iter","PreAlpha","WithAlpha","WithAlpha","abs_diff_eq","adapt_from_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","alpha","arrays_from","arrays_from","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","as_refs","atop","blend_with","borrow","borrow","borrow_mut","borrow_mut","burn","clamp","clamp_assign","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clear","clone","clone_into","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","color","components_from","components_from","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","copied","count","darken","default","default_epsilon","default_max_relative","default_max_ulps","deref","deref_mut","difference","div","div","div_assign","div_assign","dodge","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","drain","eq","equivalent","exclusion","extend","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped_mut","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_components","from_encoding","from_encoding","from_format","from_format","from_format","from_format","from_format","from_format","from_format","from_format","from_iter","from_linear","from_linear","from_stimulus","from_stimulus","from_u16","from_u32","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get","get_hue","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","get_mut","hard_light","inside","into","into","into_angle","into_angle","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_components","into_encoding","into_encoding","into_format","into_format","into_format","into_format","into_format","into_format","into_format","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_linear","into_stimulus","into_stimulus","into_u16","into_u32","is_within_bounds","iter","iter_mut","len","lighten","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","max_alpha","min_alpha","mix","mix_assign","mul","mul","mul_assign","mul_assign","multiply","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_const","new_srgb","new_srgb","new_srgb","new_srgb_const","new_srgb_const","new_srgb_const","next","next_back","opaque","outside","over","overlay","plus","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","pop","premultiply","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","push","relative_eq","saturate","saturate_assign","saturate_fixed","saturate_fixed_assign","saturating_add","saturating_add","saturating_sub","saturating_sub","screen","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set","set_hue","shift_hue","shift_hue_assign","size_hint","soft_light","split","split","sub","sub","sub_assign","sub_assign","to_owned","transparent","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","ulps_eq","with_alpha","with_alpha","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_capacity","with_hue","with_white_point","with_white_point","without_alpha","without_alpha","xor","AngleEq","FromAngle","FullRotation","HalfRotation","IntoAngle","RealAngle","SignedAngle","UnsignedAngle","angle_eq","degrees_to_radians","from_angle","full_rotation","half_rotation","into_angle","normalize_signed_angle","normalize_unsigned_angle","radians_to_degrees","Add","Blend","BlendFunction","BlendWith","Color","Compose","DestinationAlpha","DestinationColor","Equation","Equations","Max","Min","One","OneMinusDestinationAlpha","OneMinusDestinationColor","OneMinusSourceAlpha","OneMinusSourceColor","Parameter","Parameters","PreAlpha","Premultiply","ReverseSubtract","Scalar","SourceAlpha","SourceColor","Subtract","Zero","abs_diff_eq","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add","add_assign","add_assign","add_assign","alpha","alpha_equation","alpha_parameters","apply_to","apply_to","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","atop","atop","blend_with","blend_with","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","burn","burn","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","color","color_equation","color_parameters","components_from","components_from","components_from","components_from","components_from","darken","darken","default","default_epsilon","default_max_relative","default_max_ulps","deref","deref_mut","destination","difference","difference","div","div","div","div_assign","div_assign","div_assign","dodge","dodge","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","exclusion","exclusion","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_equations","from_parameters","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","hard_light","hard_light","inside","inside","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","lighten","lighten","mix","mix_assign","mul","mul","mul","mul_assign","mul_assign","mul_assign","multiply","multiply","new","new_opaque","outside","outside","over","over","overlay","overlay","plus","plus","premultiply","relative_eq","screen","screen","soft_light","soft_light","source","sub","sub","sub","sub_assign","sub_assign","sub_assign","to_owned","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","ulps_eq","unpremultiply","unpremultiply","xor","xor","BitOps","BoolMask","HasBoolMask","LazySelect","Mask","Select","from_bool","is_false","is_true","lazy_select","select","Array","ArrayCast","ArrayCast","ArraysAs","ArraysAsMut","ArraysFrom","ArraysInto","AsArrays","AsArraysMut","AsComponents","AsComponentsMut","AsUints","AsUintsMut","BoxedSliceCastError","CapacityMismatch","ComponentOrder","ComponentsAs","ComponentsAsMut","ComponentsFrom","ComponentsInto","Error","Error","Error","Error","FromArrays","FromComponents","FromUints","IntoArrays","IntoComponents","IntoUints","LengthMismatch","Packed","SliceCastError","TryComponentsAs","TryComponentsAsMut","TryComponentsInto","TryFromComponents","Uint","UintCast","UintsAs","UintsAsMut","UintsFrom","UintsInto","VecCastError","VecCastErrorKind","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_as","arrays_as_mut","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","as_arrays","as_arrays_mut","as_components","as_components_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_uints","as_uints_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","channel_order","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","color","components_as","components_as_mut","components_from","components_from","components_from","components_from","components_from","components_from","components_into","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_array","from_array_array","from_array_box","from_array_mut","from_array_ref","from_array_slice","from_array_slice_box","from_array_slice_mut","from_array_vec","from_arrays","from_component_array","from_component_slice","from_component_slice_box","from_component_slice_mut","from_component_vec","from_components","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_uint","from_uint_array","from_uint_mut","from_uint_ref","from_uint_slice","from_uint_slice_box","from_uint_slice_mut","from_uint_vec","from_uints","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_array","into_array_array","into_array_box","into_array_mut","into_array_ref","into_array_slice","into_array_slice_box","into_array_slice_mut","into_array_vec","into_arrays","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_component_array","into_component_slice","into_component_slice_box","into_component_slice_mut","into_component_vec","into_components","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_uint","into_uint_array","into_uint_mut","into_uint_ref","into_uint_slice","into_uint_slice_box","into_uint_slice_mut","into_uint_vec","into_uints","kind","map_slice_box_in_place","map_vec_in_place","pack","pack","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","try_components_as","try_components_as_mut","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from_component_slice","try_from_component_slice_box","try_from_component_slice_mut","try_from_component_vec","try_from_components","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","uints_as","uints_as_mut","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","unpack","unpack","values","values","AdaptFrom","AdaptInto","Bradford","ConeResponseMatrices","Method","TransformMatrix","VonKries","XyzScaling","adapt_from","adapt_from_using","adapt_into","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","components_from","components_from","from","from","from_angle","from_angle","from_stimulus","from_stimulus","generate_transform_matrix","get_cone_response","get_cone_response","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","inv_ma","ma","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","Ciede2000","ColorDifference","DeltaE","EuclideanDistance","HyAb","ImprovedCiede2000","ImprovedDeltaE","Scalar","Scalar","Scalar","Scalar","Scalar","Scalar","Wcag21RelativeContrast","delta_e","difference","distance","distance_squared","get_color_difference","has_enhanced_contrast_large_text","has_enhanced_contrast_text","has_min_contrast_graphics","has_min_contrast_large_text","has_min_contrast_text","hybrid_distance","improved_delta_e","improved_difference","relative_contrast","relative_luminance","FromColor","FromColorMut","FromColorMutGuard","FromColorUnclamped","FromColorUnclamped","FromColorUnclampedMut","FromColorUnclampedMutGuard","IntoColor","IntoColorMut","IntoColorUnclamped","IntoColorUnclampedMut","OutOfBounds","TryFromColor","TryIntoColor","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","color","components_from","components_from","components_from","deref","deref","deref_mut","deref_mut","description","drop","drop","fmt","fmt","from","from","from","from_angle","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped_mut","from_stimulus","from_stimulus","from_stimulus","into","into","into","into_angle","into_angle","into_angle","into_clamped_guard","into_color","into_color","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_stimulus","into_stimulus","into_stimulus","into_unclamped_guard","restore","restore","then_into_color_mut","then_into_color_mut","then_into_color_unclamped_mut","then_into_color_unclamped_mut","to_string","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","F2p2","FromLinear","Gamma","IntoLinear","Linear","Srgb","from_linear","gamma","into_linear","linear","srgb","F2p2","Gamma","GammaFn","Number","VALUE","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","components_from","components_from","components_from","eq","eq","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from_angle","from_angle","from_angle","from_linear","from_stimulus","from_stimulus","from_stimulus","into","into","into","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_linear","into_stimulus","into_stimulus","into_stimulus","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","Linear","LinearFn","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","components_from","components_from","eq","eq","equivalent","equivalent","fmt","fmt","from","from","from_angle","from_angle","from_linear","from_stimulus","from_stimulus","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_linear","into_stimulus","into_stimulus","to_owned","to_owned","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","Srgb","adapt_into_using","arrays_from","arrays_into","blue","borrow","borrow_mut","clone","clone_into","components_from","eq","equivalent","fmt","from","from_angle","from_linear","from_linear","from_linear","from_stimulus","green","into","into_angle","into_color","into_color_unclamped","into_linear","into_linear","into_linear","into_stimulus","red","rgb_to_xyz_matrix","to_owned","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","xyz_to_rgb_matrix","Hsl","Hsla","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","lightness","max_lightness","max_saturation","min_lightness","min_saturation","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","saturation","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Hsluv","Hsluva","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","max_saturation","min_l","min_saturation","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Hsv","Hsva","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_saturation","max_value","min_saturation","min_value","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","saturation","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","value","with_capacity","LabHue","LabHueIter","LuvHue","LuvHueIter","OklabHue","OklabHueIter","RgbHue","RgbHueIter","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","as_ref","as_ref","as_ref","as_ref","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clear","clear","clear","cloned","cloned","cloned","cloned","cloned","cloned","cloned","cloned","components_from","components_from","components_from","components_from","copied","copied","copied","copied","copied","copied","copied","copied","count","count","count","count","drain","drain","drain","drain","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_cartesian","from_cartesian","from_cartesian","from_cartesian","from_degrees","from_degrees","from_degrees","from_degrees","from_format","from_format","from_format","from_format","from_radians","from_radians","from_radians","from_radians","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get","get","get","get","get_mut","get_mut","get_mut","get_mut","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_cartesian","into_cartesian","into_cartesian","into_cartesian","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_degrees","into_degrees","into_degrees","into_degrees","into_format","into_format","into_format","into_format","into_inner","into_inner","into_inner","into_inner","into_iter","into_iter","into_iter","into_iter","into_positive_degrees","into_positive_degrees","into_positive_degrees","into_positive_degrees","into_positive_radians","into_positive_radians","into_positive_radians","into_positive_radians","into_radians","into_radians","into_radians","into_radians","into_raw_degrees","into_raw_degrees","into_raw_degrees","into_raw_degrees","into_raw_radians","into_raw_radians","into_raw_radians","into_raw_radians","into_stimulus","into_stimulus","into_stimulus","into_stimulus","iter","iter","iter","iter","iter_mut","iter_mut","iter_mut","iter_mut","len","len","len","len","new","new","new","new","next","next","next","next","next_back","next_back","next_back","next_back","pop","pop","pop","pop","push","push","push","push","set","set","set","set","size_hint","size_hint","size_hint","size_hint","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","with_capacity","with_capacity","with_capacity","with_capacity","Hwb","Hwba","Iter","adapt_into_using","arrays_from","arrays_into","as_refs","blackness","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_blackness","max_whiteness","min_blackness","min_whiteness","new","new_const","new_srgb","new_srgb_const","next","next_back","pop","push","set","size_hint","standard","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","whiteness","with_capacity","Iter","Lab","Laba","a","adapt_into_using","arrays_from","arrays_into","as_refs","b","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_a","max_b","max_l","min_a","min_b","min_l","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Iter","Lch","Lcha","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_chroma","max_extended_chroma","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","Iter","Lchuv","Lchuva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_chroma","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","GammaLuma","GammaLumaa","Iter","LinLuma","LinLumaa","Luma","LumaStandard","Lumaa","PackedAluma","PackedLumaa","SrgbLuma","SrgbLumaa","TransferFn","WhitePoint","abs_diff_eq","abs_diff_ne","adapt_from_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","arrays_from","arrays_from","arrays_into","arrays_into","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_refs","atop","blend_with","borrow","borrow","borrow_mut","borrow_mut","channels","clamp","clamp_assign","clear","clone","clone_into","cloned","cloned","components_from","components_from","copied","copied","count","default","default_epsilon","default_max_relative","default_max_ulps","distance_squared","div","div","div_assign","div_assign","drain","eq","equivalent","extend","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_components","from_encoding","from_format","from_iter","from_linear","from_stimulus","from_stimulus","from_u16","from_u16","get","get_contrast_ratio","get_mut","inside","into","into","into_angle","into_angle","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_encoding","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_stimulus","into_stimulus","into_u16","into_u16","is_within_bounds","iter","iter_mut","len","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","luma","max_luma","min_luma","mix","mix_assign","mul","mul","mul_assign","mul_assign","new","next","next_back","outside","over","plus","pop","premultiply","push","relative_eq","relative_luminance","relative_ne","saturating_add","saturating_add","saturating_sub","saturating_sub","set","size_hint","split","standard","sub","sub","sub_assign","sub_assign","to_owned","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","ulps_eq","ulps_ne","unpremultiply","with_alpha","with_capacity","without_alpha","xor","Al","La","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_into","arrays_into","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","components_from","components_from","eq","eq","equivalent","equivalent","fmt","fmt","from","from","from_angle","from_angle","from_stimulus","from_stimulus","into","into","into_angle","into_angle","into_color","into_color","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","pack","pack","pack","pack","to_owned","to_owned","try_components_into","try_components_into","try_from","try_from","try_into","try_into","try_into_color","try_into_color","type_id","type_id","uints_from","uints_from","uints_into","uints_into","unpack","unpack","unpack","unpack","Iter","Luv","Luva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","max_u","max_v","min_l","min_u","min_v","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","u","uints_from","uints_into","v","white_point","with_capacity","ALICEBLUE","ANTIQUEWHITE","AQUA","AQUAMARINE","AZURE","BEIGE","BISQUE","BLACK","BLANCHEDALMOND","BLUE","BLUEVIOLET","BROWN","BURLYWOOD","CADETBLUE","CHARTREUSE","CHOCOLATE","CORAL","CORNFLOWERBLUE","CORNSILK","CRIMSON","CYAN","DARKBLUE","DARKCYAN","DARKGOLDENROD","DARKGRAY","DARKGREEN","DARKGREY","DARKKHAKI","DARKMAGENTA","DARKOLIVEGREEN","DARKORANGE","DARKORCHID","DARKRED","DARKSALMON","DARKSEAGREEN","DARKSLATEBLUE","DARKSLATEGRAY","DARKSLATEGREY","DARKTURQUOISE","DARKVIOLET","DEEPPINK","DEEPSKYBLUE","DIMGRAY","DIMGREY","DODGERBLUE","FIREBRICK","FLORALWHITE","FORESTGREEN","FUCHSIA","GAINSBORO","GHOSTWHITE","GOLD","GOLDENROD","GRAY","GREEN","GREENYELLOW","GREY","HONEYDEW","HOTPINK","INDIANRED","INDIGO","IVORY","KHAKI","LAVENDER","LAVENDERBLUSH","LAWNGREEN","LEMONCHIFFON","LIGHTBLUE","LIGHTCORAL","LIGHTCYAN","LIGHTGOLDENRODYELLOW","LIGHTGRAY","LIGHTGREEN","LIGHTGREY","LIGHTPINK","LIGHTSALMON","LIGHTSEAGREEN","LIGHTSKYBLUE","LIGHTSLATEGRAY","LIGHTSLATEGREY","LIGHTSTEELBLUE","LIGHTYELLOW","LIME","LIMEGREEN","LINEN","MAGENTA","MAROON","MEDIUMAQUAMARINE","MEDIUMBLUE","MEDIUMORCHID","MEDIUMPURPLE","MEDIUMSEAGREEN","MEDIUMSLATEBLUE","MEDIUMSPRINGGREEN","MEDIUMTURQUOISE","MEDIUMVIOLETRED","MIDNIGHTBLUE","MINTCREAM","MISTYROSE","MOCCASIN","NAVAJOWHITE","NAVY","OLDLACE","OLIVE","OLIVEDRAB","ORANGE","ORANGERED","ORCHID","PALEGOLDENROD","PALEGREEN","PALETURQUOISE","PALEVIOLETRED","PAPAYAWHIP","PEACHPUFF","PERU","PINK","PLUM","POWDERBLUE","PURPLE","REBECCAPURPLE","RED","ROSYBROWN","ROYALBLUE","SADDLEBROWN","SALMON","SANDYBROWN","SEAGREEN","SEASHELL","SIENNA","SILVER","SKYBLUE","SLATEBLUE","SLATEGRAY","SLATEGREY","SNOW","SPRINGGREEN","STEELBLUE","TAN","TEAL","THISTLE","TOMATO","TURQUOISE","VIOLET","WHEAT","WHITE","WHITESMOKE","YELLOW","YELLOWGREEN","from_str","Abs","Arithmetics","Cbrt","Clamp","ClampAssign","Exp","FromScalar","FromScalarArray","Hypot","IntoScalarArray","IsValidDivisor","MinMax","MulAdd","MulSub","One","Output","Output","PartialCmp","Powf","Powi","Powu","Real","Recip","Round","SaturatingAdd","SaturatingSub","Scalar","Sqrt","Trigonometry","Zero","abs","acos","asin","atan","atan2","cbrt","ceil","clamp","clamp_assign","clamp_max","clamp_max_assign","clamp_min","clamp_min_assign","cos","eq","exp","floor","from_array","from_f64","from_scalar","gt","gt_eq","hypot","into_array","is_valid_divisor","lt","lt_eq","max","min","min_max","mul_add","mul_sub","neq","one","powf","powi","powu","recip","round","saturating_add","saturating_sub","sin","sin_cos","sqrt","tan","zero","Iter","Okhsl","Okhsla","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_format","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","lightness","max_lightness","max_saturation","min_lightness","min_saturation","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Iter","Okhsv","Okhsva","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_saturation","max_value","min_saturation","min_value","new","new_const","next","next_back","pop","push","saturation","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","value","with_capacity","Iter","Okhwb","Okhwba","adapt_into_using","arrays_from","arrays_into","as_refs","blackness","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_format","into_iter","into_stimulus","iter","iter_mut","len","max_blackness","max_whiteness","min_blackness","min_whiteness","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","whiteness","with_capacity","Iter","Oklab","Oklaba","a","adapt_into_using","arrays_from","arrays_into","as_refs","b","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","min_l","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","Iter","Oklch","Oklcha","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","chroma","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","hue","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","l","len","max_l","min_chroma","min_l","new","new_const","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","with_capacity","FromHexError","GammaSrgb","GammaSrgba","HexFormatError","Iter","LinSrgb","LinSrgba","PackedAbgr","PackedArgb","PackedBgra","PackedRgba","ParseIntError","Primaries","Primaries","Rgb","RgbSpace","RgbStandard","Rgba","RgbaHexFormatError","Space","Srgb","Srgba","TransferFn","WhitePoint","abs_diff_eq","abs_diff_ne","adapt_from_using","adapt_into_using","adapt_into_using","adapt_into_using","add","add","add_assign","add_assign","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","as_mut","as_mut","as_ref","as_ref","as_refs","atop","blend_with","blue","blue","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","channels","clamp","clamp_assign","clear","clone","clone_into","cloned","cloned","components_from","components_from","components_from","copied","copied","count","default","default_epsilon","default_max_relative","default_max_ulps","distance_squared","div","div","div_assign","div_assign","drain","eq","equivalent","extend","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_color","from_color_mut","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped","from_color_unclamped_mut","from_components","from_encoding","from_format","from_iter","from_linear","from_stimulus","from_stimulus","from_stimulus","from_str","from_str","from_u32","from_u32","get","get_contrast_ratio","get_hue","get_mut","green","green","inside","into","into","into","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color_mut","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped_mut","into_components","into_encoding","into_format","into_iter","into_iter","into_iter","into_iter","into_linear","into_stimulus","into_stimulus","into_stimulus","into_u32","into_u32","is_within_bounds","iter","iter_mut","len","lighten","lighten_assign","lighten_fixed","lighten_fixed_assign","max_blue","max_green","max_red","min_blue","min_green","min_red","mix","mix_assign","mul","mul","mul_assign","mul_assign","new","next","next_back","outside","over","plus","pop","premultiply","push","red","red","relative_eq","relative_luminance","relative_ne","rgb_to_xyz_matrix","saturating_add","saturating_add","saturating_sub","saturating_sub","set","size_hint","source","split","standard","sub","sub","sub_assign","sub_assign","to_owned","to_string","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from_color","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","ulps_eq","ulps_ne","unpremultiply","with_alpha","with_capacity","without_alpha","xor","xyz_to_rgb_matrix","Abgr","Argb","Bgra","Rgba","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","components_from","components_from","components_from","components_from","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_stimulus","from_stimulus","from_stimulus","from_stimulus","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","pack","pack","pack","pack","pack","pack","pack","pack","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","unpack","unpack","unpack","unpack","unpack","unpack","unpack","unpack","FromStimulus","IntoStimulus","Stimulus","StimulusColor","from_stimulus","into_stimulus","max_intensity","A","Any","B","C","D50","D50Degree10","D55","D55Degree10","D65","D65Degree10","D75","D75Degree10","E","F11","F2","F7","WhitePoint","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","adapt_into_using","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_from","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","arrays_into","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","components_from","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_angle","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","from_stimulus","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","get_xyz","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_angle","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_color_unclamped","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","into_stimulus","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_components_into","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","try_into_color","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_from","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","uints_into","Iter","Xyz","Xyza","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","len","max_x","max_y","max_z","min_x","min_y","min_z","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","with_white_point","x","y","z","Iter","Yxy","Yxya","adapt_into_using","arrays_from","arrays_into","as_refs","borrow","borrow_mut","clear","cloned","cloned","components_from","copied","copied","count","drain","from","from_angle","from_components","from_stimulus","get","get_mut","into","into_angle","into_color","into_color_unclamped","into_components","into_iter","into_stimulus","iter","iter_mut","len","luma","max_luma","max_x","max_y","min_luma","min_x","min_y","new","next","next_back","pop","push","set","size_hint","try_components_into","try_from","try_into","try_into_color","type_id","uints_from","uints_into","white_point","with_capacity","with_white_point","x","y"],"q":[[0,"palette"],[2185,"palette::alpha"],[2702,"palette::angle"],[2719,"palette::blend"],[2988,"palette::bool_mask"],[2999,"palette::cast"],[3290,"palette::chromatic_adaptation"],[3349,"palette::color_difference"],[3378,"palette::convert"],[3484,"palette::encoding"],[3495,"palette::encoding::gamma"],[3583,"palette::encoding::linear"],[3641,"palette::encoding::srgb"],[3680,"palette::hsl"],[3741,"palette::hsluv"],[3798,"palette::hsv"],[3859,"palette::hues"],[4091,"palette::hwb"],[4152,"palette::lab"],[4210,"palette::lch"],[4268,"palette::lchuv"],[4325,"palette::luma"],[4546,"palette::luma::channels"],[4610,"palette::luv"],[4668,"palette::named"],[4817,"palette::num"],[4893,"palette::okhsl"],[4951,"palette::okhsv"],[5008,"palette::okhwb"],[5065,"palette::oklab"],[5118,"palette::oklch"],[5173,"palette::rgb"],[5427,"palette::rgb::channels"],[5555,"palette::stimulus"],[5562,"palette::white_point"],[6027,"palette::xyz"],[6086,"palette::yxy"]],"d":["An alpha component wrapper for colors, for adding …","Extension trait for fixed size arrays.","An operator for restricting a color’s components to …","An assigning operator for restricting a color’s …","The opaque color type, without any transparency.","","Operators for darkening a color;","Assigning operators for darkening a color;","Operator for decreasing the saturation (or chroma) of a …","Assigning operator for decreasing the saturation (or …","","","","Gamma 2.2 encoded luminance.","Gamma 2.2 encoded luminance with an alpha component.","Gamma 2.2 encoded sRGB.","Gamma 2.2 encoded sRGB with an alpha component.","A trait for colors where a hue may be calculated.","HSL color space.","Linear HSL with an alpha component. See the Hsla …","HSLuv color space.","HSLuv with an alpha component. See the Hsluva …","HSV color space.","Linear HSV with an alpha component. See the Hsva …","The kind of hue unit this color space uses.","HWB color space.","Linear HWB with an alpha component. See the Hwba …","","","Checks if color components are within their expected range …","The type of the array’s items.","The number of items in the array.","The CIE L*a*b* (CIELAB) color space.","A hue type for the CIE L*a*b* family of color spaces.","CIE L*a*b* (CIELAB) with an alpha component. See the Laba …","CIE L*C*h°, a polar version of CIE L*a*b*.","CIE L*C*h° with an alpha component. See the Lcha …","CIE L*C*uv h°uv, a polar version of CIE L*u*v*.","CIE L*C*uv h°uv with an alpha component. See the Lchuva …","Operators for lightening a color.","Assigning operators for lightening a color.","Linear luminance.","Linear luminance with an alpha component.","Linear sRGB.","Linear sRGB with an alpha component.","The CIE L*u*v* (CIELUV) color space.","A hue type for the CIE L*u*v* family of color spaces.","CIE L*u*v* (CIELUV) with an alpha component. See the Luva …","A 9 element array representing a 3x3 matrix.","Linear color interpolation of two colors.","Assigning linear color interpolation of two colors.","An array of size N + 1.","Temporary helper trait for getting an array type of size …","A Hue/Saturation/Lightness representation of Oklab in the …","Okhsl with an alpha component.","A Hue/Saturation/Value representation of Oklab in the sRGB …","Okhsv with an alpha component. See the Okhsva …","A Hue/Whiteness/Blackness representation of Oklab in the …","Okhwb with an alpha component. See the Okhwba …","The Oklab color space.","A hue type for the Oklab color space.","Oklab with an alpha component.","Oklch, a polar version of Oklab.","Oklch with an alpha component. See the Oklcha …","A trait for calculating relative contrast between two …","A hue type for the RGB family of color spaces.","Operator for increasing the saturation (or chroma) of a …","Assigning operator for increasing the saturation (or …","The type of the contrast ratio.","The type of the mixing factor.","The type of the mixing factor.","The type of the lighten modifier.","The type of the lighten modifier.","The type of the darken modifier.","The type of the darken modifier.","The type of the hue modifier.","The type of the hue modifier.","The type of the saturation modifier.","The type of the saturation modifier.","The type of the desaturation modifier.","The type of the desaturation modifier.","Change the hue of a color to a specific value without …","Operator for increasing or decreasing the hue by an amount.","Assigning operator for increasing or decreasing the hue by …","Non-linear sRGB, the most common RGB input/output format.","sRGB encoded luminance.","sRGB encoded luminance with an alpha component.","Non-linear sRGB with an alpha component.","A trait for color types that can have or be given …","The color type with transparency applied.","","Change the hue of a color to a specific value.","The CIE 1931 XYZ color space.","CIE 1931 XYZ with an alpha component. See the Xyza …","The CIE 1931 Yxy (xyY) color space.","CIE 1931 Yxy (xyY) with an alpha component. See the Yxya …","a* goes from red at -128 to green at 127.","a changes the hue from reddish to greenish, when moving …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Types related to transparent colors.","The transparency component. 0.0 (or 0u8) is fully …","Traits for working with angular values, such as for in …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","b* goes from yellow at -128 to blue at 127.","b changes the hue from yellowish to blueish, when moving …","The blackness of the color. It specifies the amount black …","The amount of black, mixed in the pure hue, ranging from …","Color blending and blending equations.","","","","","","Traits for abstracting over Boolean types.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Traits and functions for casting colors to and from other …","C* is the colorfulness of the color. It’s similar to …","C*uv is the colorfulness of the color. It’s similar to …","chroma is the colorfulness of the color. A color with …","Convert colors from one reference white point to another","Return a new color where out-of-bounds components have …","","","","","","","","","","","","","","","","Changes out-of-bounds components to the nearest valid …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The color.","Algorithms for calculating the difference between colors.","","","","","","","","","","","","","","","","","","","","Calculate the ratio between two luma values.","Traits for converting between color spaces.","Scale the color towards the minimum lightness by factor, a …","Scale the color towards the minimum lightness by factor, a …","Darken the color by amount, a value ranging from 0.0 to 1.0…","Darken the color by amount, a value ranging from 0.0 to 1.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Scale the color towards the minimum saturation by factor, …","Scale the color towards the minimum saturation by factor, …","Increase the saturation by amount, a value ranging from 0.0…","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","Number and color encoding traits, types and standards.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Converts lab to Okhwb in the bounds of sRGB.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calculate the contrast ratio between two colors.","","","","","","","","","","","","","","","Calculate a hue if possible.","","","","","","","","","","","","","","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3. …","Verify the contrast between two colors satisfies SC 1.4.3. …","Types for the HSL color space.","Types for the HSLuv color space.","Types for the HSV color space.","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees. Decides if it’s red, …","The hue of the color, in degrees of a circle.","The hue of the color, in degrees of a circle.","The hue of the color, in degrees of a circle.","h is the hue of the color, in degrees. Decides if it’s …","Hues and hue related types.","Types for the HWB color space.","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Check if the color’s components are within the expected …","","","","","","","","","","","","","","","","Decides how light the color will look. 0.0 will be black, …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","L* is the lightness of the color. 0.0 gives absolute black …","l is the lightness of the color. 0 gives absolute black …","L is the lightness of the color. 0 gives absolute black …","Types for the CIE L*a*b* (CIELAB) color space.","Types for the CIE L*C*h° color space.","Types for the CIE L*C*uv h°uv color space.","Scale the color towards the maximum lightness by factor, a …","","","","","","","","","","","","","","","","Scale the color towards the maximum lightness by factor, a …","","","","","","","","","","","","","","","","Lighten the color by amount, a value ranging from 0.0 to …","","","","","","","","","","","","","","","","Lighten the color by amount, a value ranging from 0.0 to …","","","","","","","","","","","","","","","","Decides how light the color will look. 0.0 will be black, …","The relative luminance of the color, where","Types for luma and luminance (grayscale) values.","luma (Y) was a measure of the brightness or luminance of a …","Types for the CIE L*u*v* (CIELUV) color space.","Mix the color with an other color, by factor.","","","","","","","","","","","","","","","","Mix the color with an other color, by factor.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A collection of named color constants. Can be toggled with …","Traits for abstracting over numeric types.","Types for the Okhsl color space.","Types for the Okhsv color space.","Types for the Okhwb color space.","Types for the Oklab color space.","Types for the Oklch color space.","Transforms the color into a fully opaque color with a …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Types for the RGB color space, including spaces and …","Scale the color towards the maximum saturation by factor, …","","","","","","","","Scale the color towards the maximum saturation by factor, …","","","","","","","","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","Increase the saturation by amount, a value ranging from 0.0…","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The colorfulness of the color. 0.0 gives gray scale colors …","The colorfulness of the color, as a percentage of the …","The colorfulness of the color. 0.0 gives gray scale colors …","The saturation (freedom of black or white) of the color.","The saturation (freedom of whitishness) of the color.","Change the hue to a specific value.","","","","","","","","","","","Return a copy of self with the hue shifted by amount.","","","","","","","","","","","Shifts the hue by amount.","","","","","","","","","","","Splits the color into separate color and transparency …","","","","","","","","","","","","","","","","The white point and RGB primaries this color is adapted …","The white point and RGB primaries this color is adapted …","The white point and RGB primaries this color is adapted …","Traits for working with stimulus colors and values, such …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Transforms the color into a fully transparent color. If …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The range of valid u* varies depending on the values of L* …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The range of valid v* varies depending on the values of L* …","Decides how bright the color will look. 0.0 will be black, …","The monochromatic brightness of the color.","Defines the tristimulus values of the CIE Illuminants.","The white point and RGB primaries this color is adapted …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The white point associated with the color’s illuminant …","The whiteness of the color. It specifies the amount white …","The amount of white, mixed in the pure hue, ranging from …","Transforms the color into a transparent color with the …","","","","","","","","","","","","","","","","Return a copy of self with a specific hue.","","","","","","","","","","","Removes the transparency from the color. If Self::Color has","","","","","","","","","","","","","","","","X is the scale of what can be seen as a response curve for …","x chromaticity co-ordinate derived from XYZ color space as …","","","","","","Types for the CIE 1931 XYZ color space.","Y is the luminance of the color, where 0.0 is black and …","y chromaticity co-ordinate derived from XYZ color space as …","Types for the CIE 1931 Yxy (xyY) color space.","Z is the scale of what can be seen as the blue …","An alpha component wrapper for colors, for adding …","The opaque color type, without any transparency.","An iterator for transparent colors.","","A trait for color types that can have or be given …","The color type with transparency applied.","","","","","","","","","The transparency component. 0.0 (or 0u8) is fully …","","","","","","","","","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","Borrow this color’s components as shared references.","","","","","","","","","","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","The color.","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","","","","","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","Return an iterator that moves colors out of the specified …","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.","Convert from u (L\\\\*, u\\\\*, v\\\\*, alpha) tuple.","Convert from a (hue, saturation, l, alpha) tuple.","Convert from a (L, a, b, alpha) tuple.","Convert from a (luma, alpha) tuple.","Convert from a (hue, saturation, value, alpha) tuple.","Convert from a (L\\\\*, C\\\\*, h°, alpha) tuple.","Convert from a (hue, saturation, lightness, alpha) tuple.","Convert from a (L\\\\*, C\\\\*uv, h°uv, alpha) tuple.","Convert from a (L, C, h, alpha) tuple.","Convert from a (red, green, blue, alpha) tuple.","Convert from a (X, Y, Z, alpha) tuple.","Convert from a (hue, saturation, lightness, alpha) tuple.","Convert from a (hue, whiteness, blackness, alpha) tuple.","Convert from a (hue, whiteness, blackness, alpha) tuple.","Convert from a (hue, saturation, value, alpha) tuple.","Convert from a (L\\\\*, a\\\\*, b\\\\*, alpha) tuple.","Convert to linear luminance from a different encoding with …","Convert RGB from a different encoding to linear with …","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert from another component type.","Convert the RGBA components from other number types.","","Convert linear luminance to non-linear luminance with …","Convert linear RGB to non-linear RGB with transparency.","","","Convert from a packed u16 with a specific component order.","Convert from a packed u32 with specifiable component order.","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, with references to the …","","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","Get a color, or slice of colors, that allows modifying the …","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Convert to a (L\\\\*, a\\\\*, b\\\\*, alpha) tuple.","Convert to a (luma, alpha) tuple.","Convert to a (X, Y, Z, alpha) tuple.","Convert to a (hue, saturation, lightness, alpha) tuple.","Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.","Convert to a (hue, saturation, value, alpha) tuple.","Convert to a (hue, saturation, lightness, alpha) tuple.","Convert to a (hue, saturation, l, alpha) tuple.","Convert to a (red, green, blue, alpha) tuple.","Convert to a (hue, saturation, value, alpha) tuple.","Convert to u (L\\\\*, u\\\\*, v\\\\*, alpha) tuple.","Convert to a (L\\\\*, C\\\\*uv, h°uv, alpha) tuple.","Convert to a (L, C, h, alpha) tuple.","Convert to a (L, a, b, alpha) tuple.","Convert to a (L\\\\*, C\\\\*, h°, alpha) tuple.","Convert to a (hue, whiteness, blackness, alpha) tuple.","Convert to a (hue, whiteness, blackness, alpha) tuple.","Convert a linear color to a different encoding with …","Convert a linear color to a different encoding with …","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert into another component type.","Convert the RGBA components into other number types.","Convert into another component type.","Convert into another component type.","","","","","Convert the color to linear RGB with transparency.","Convert the color to linear luminance with transparency.","","","Convert to a packed u16 with with a specific component …","Convert to a packed u32 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","","Return the alpha value maximum.","Return the alpha value minimum.","","","","","","","","Create an HWB color with transparency.","Create a CIE XYZ color with transparency.","Create a CIE Yxy color with transparency.","Create an Okhsv color with transparency.","Create an HSL color with transparency.","Create an Okhwb color with transparency.","Create a CIE L*C*uv h°uv color with transparency.","Create a CIE L*u*v* color with transparency.","Create an Okhsl color with transparency.","Create a CIE L*C*h° color with transparency.","Create an Oklch color with transparency.","Create an HSLuv color with transparency.","Create a luminance color with transparency.","Non-linear RGB.","Create a CIE L*a*b* with transparency.","Create an HSV color with transparency.","Create an Oklab color with transparency.","Create an Okhsla color. This is the same as Okhsla::new …","Create a CIE L*C*h° color with transparency. This is the …","Create an HWB color with transparency. This is the same as …","Create an HSLuv color with transparency. This is the same …","Create an Okhwba color. This is the same as Okhwba::new …","Create an HSL color with transparency. This is the same as …","Create an HSV color with transparency. This is the same as …","Create a CIE L*C*uv h°uv color with transparency. This is …","Create an Oklcha color. This is the same as Oklcha::new …","Create an Okhsva color. This is the same as Okhsva::new …","Create an sRGB HSV color with transparency. This method …","Create an sRGB HSL color with transparency. This method …","Create an sRGB HWB color with transparency. This method …","Create an sRGB HSV color with transparency. This is the …","Create an sRGB HSL color with transparency. This is the …","Create an sRGB HWB color with transparency. This is the …","","","Transforms the color into a fully opaque color with a …","","","","","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Pop a color’s components from the component vectors. See …","Alpha mask the color by its transparency.","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","Push an additional color’s components onto the component …","","","","","","","","","","","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","Update this color with new values.","","","","","","Splits the color into separate color and transparency …","","","","","","","Transforms the color into a fully transparent color. If …","","","","","","","","","","","","","","","","","","","Transforms the color into a transparent color with the …","","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","Create a struct of vectors with a minimum capacity. See …","","Changes the reference white point without changing the …","Changes the reference white point without changing the …","Removes the transparency from the color. If Self::Color has","","","Angular equality, where 0 degrees and 360 degrees are …","Performs value-to-value conversion between angle types. …","Represents types that can express a full rotation (i.e. …","Represents types that can express half of a rotation (i.e. …","Performs value-to-value conversion between angle types. …","Angle values that are real numbers and can represent both …","Angle types that can represent the full circle using …","Angle types that can represent the full circle as positive …","Check if self and other represent the same angle on a …","Consider self to be degrees and convert it to radians.","Performs a conversion from angle.","Return a value that represents a full rotation (i.e. 360 …","Return a value that represents half of a rotation (i.e. …","Performs a conversion into T.","Normalize self to a range corresponding to -180 to 180 …","Normalize self to a range corresponding to 0 to 360 …","Consider self to be radians and convert it to degrees.","Add the source and destination, according to …","A trait for different ways of mixing colors together.","A trait for custom blend functions.","Blending with a custom blend function.","The base color type of Self.","The Porter Duff composition operators, as described by W3C.","The destination alpha.","The destination color, or alpha.","A blending equation.","A pair of blending equations and corresponding parameters.","Create a color where each component is the largest of each …","Create a color where each component is the smallest of …","A simple 1.","One minus the destination alpha.","One minus the destination color, or alpha.","One minus the source alpha.","One minus the source color, or alpha.","A blending parameter.","A pair of source and destination parameters.","Premultiplied alpha wrapper.","Alpha masking and unmasking.","Subtract the source from the destination, according to …","The color’s component type.","The source alpha.","The source color, or alpha.","Subtract the destination from the source, according to …","A simple 0.","","","","","","","","","","","","","The transparency component. 0.0 is fully transparent and …","The equation for the alpha component.","The parameters for the alpha component.","Apply this blend function to a pair of colors.","","","","","","","","","","","","","","","","Place self over only the visible parts of other.","","Blend self, as the source color, with destination, using …","","","","","","","","","","","","Darken other to reflect self. Results in other if self is …","","","","","","","","","","","","The premultiplied color components (…","The equation for the color components.","The parameters for the color components.","","","","","","Return the darkest parts of self and other.","","","","","","","","The destination parameter.","Return the absolute difference between self and other. It…","","","","","","","","Lighten other to reflect self. Results in other if self is …","","","","","","","","","","","","Similar to difference, but appears to result in a lower …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","Create a pair of blending equations, where all the …","Create a pair of additive blending equations with the …","","","","","","Multiply self or other if other is dark, or screen them if …","","Results in the parts of self that overlaps the visible …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Return the lightest parts of self and other.","","","","","","","","","","Multiply self with other. This uses the alpha component to …","","Alpha mask color with alpha.","Create an opaque alpha masked color.","Results in the parts of self that lies outside the visible …","","Place self over other. This is the good old common alpha …","","Multiply self or other if other is dark, or screen them if …","","Add self and other. This uses the alpha component to …","","Alpha mask the color.","","Make a color which is at least as light as self or other.","","Lighten other if self is light, or darken other as if it’…","","The source parameter.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Alpha unmask the color, resulting in a color and …","Alpha unmask the color.","Results in either self or other, where they do not overlap.","","A helper trait that collects bit traits under one name.","Basic methods for boolean masks.","Associates a Boolean type to the implementing type.","Like Select, but can avoid evaluating the input.","The mask type to use for selecting Self values.","Makes a mask bale to select between two values.","Create a new mask where each lane is set to value.","Checks if all lanes in the mask are false.","Checks if all lanes in the mask are true.","Select lanes from the output of a when corresponding lanes …","Select lanes from a when corresponding lanes in self are …","The output type of a cast to an array.","Marker trait for types that can be represented as a fixed …","","Trait for casting a reference to collection of arrays into …","Trait for casting a mutable reference to collection of …","Trait for casting a collection of arrays from a collection …","Trait for casting a collection of arrays into a collection …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","Trait for casting a reference to a collection of colors …","Trait for casting a mutable reference to a collection of …","The error type returned when casting a boxed slice of …","The type of error returned when the capacity of a Vec didn…","Packs and unpacks color types with some component order.","Trait for casting a reference to collection of color …","Trait for casting a mutable reference to collection of …","Trait for casting a collection of color components into a …","Trait for casting a collection of color components from a …","The error for when try_components_as fails to cast.","The error for when try_components_as_mut fails to cast.","The error for when try_from_components fails to cast.","The error for when try_into_colors fails to cast.","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors from a collection …","Trait for casting a collection of colors into a collection …","Trait for casting a collection of colors into a collection …","Trait for casting a collection of colors into a collection …","The type of error returned when the length of a Vec didn’…","A color packed into a compact format, such as an unsigned …","The error type returned when casting a slice of components …","Trait for trying to cast a reference to collection of …","Trait for trying to cast a mutable reference to collection …","Trait for trying to cast a collection of color components …","Trait for trying to cast a collection of colors from a …","An unsigned integer with the same size as Self.","Marker trait for types that can be represented as an …","Trait for casting a reference to a collection of unsigned …","Trait for casting a mutable reference to a collection of …","Trait for casting a collection of unsigned integers from a …","Trait for casting a collection of unsigned integers into a …","The error type returned when casting a Vec of components …","The type of error that is returned when casting a Vec of …","","","","","","Cast this collection of arrays into a collection of colors.","Cast this collection of arrays into a mutable collection …","Cast a collection of colors into a collection of arrays.","","","","","","Cast this collection of arrays into a collection of colors.","","","","","","Cast this collection of colors into a collection of arrays.","Cast this collection of colors into a mutable collection …","Cast this collection of colors into a collection of color …","Cast this collection of colors into a mutable collection …","","","","","","","Cast this collection of colors into a collection of …","Cast this collection of colors into a mutable collection …","","","","","","","","","","","The channel order for the color components in the packed …","","","","","","","","","","","The color packed into a type P, such as u32 or [u8; 4].","Cast this collection of color components into a reference …","Cast this collection of color components into a mutable …","Cast a collection of colors into a collection of color …","","","","","","Cast this collection of color components into a collection …","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Returns the argument unchanged.","","","","","","","","","Cast from an array to a color type.","Cast from an array of arrays to an array of colors.","Cast from a boxed array to a boxed color type.","Cast from a mutable array reference to a mutable color …","Cast from an array reference to a color type reference.","Cast from a slice of arrays to a slice of colors.","Cast from a boxed slice of arrays to a boxed slice of …","Cast from a mutable slice of arrays to a mutable slice of …","Cast from a Vec of arrays to a Vec of colors.","Cast a collection of arrays into an collection of colors.","Cast from an array of color components to an array of …","The same as try_from_component_slice but panics on error.","The same as try_from_component_slice_box but panics on …","The same as try_from_component_slice_mut but panics on …","The same as try_from_component_vec but panics on error.","Cast a collection of color components into an collection …","","","","","","Cast from an unsigned integer to a color type.","Cast from an array of unsigned integers to an array of …","Cast from a mutable unsigned integer reference to a …","Cast from an unsigned integer reference to a color type …","Cast from a slice of unsigned integers to a slice of …","Cast from a boxed slice of unsigned integers to a boxed …","Cast from a mutable slice of unsigned integers to a …","Cast from a Vec of unsigned integers to a Vec of colors.","Cast a collection of unsigned integers into an collection …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","Cast from a color type to an array.","Cast from an array of colors to an array of arrays.","Cast from a boxed color type to a boxed array.","Cast from a mutable color type reference to a mutable …","Cast from a color type reference to an array reference.","Cast from a slice of colors to a slice of arrays.","Cast from a boxed slice of colors to a boxed slice of …","Cast from a mutable slice of colors to a mutable slice of …","Cast from a Vec of colors to a Vec of arrays.","Cast this collection of colors into a collection of arrays.","","","","","","","","","","","Cast from an array of colors to an array of color …","Cast from a slice of colors to a slice of color components.","Cast from a boxed slice of colors to a boxed slice of …","Cast from a slice of colors to a slice of color components.","Cast from a Vec of colors to a Vec of color components.","Cast this collection of colors into a collection of color …","","","","","","Cast from a color type to an unsigned integer.","Cast from an array of colors to an array of unsigned …","Cast from a mutable color type reference to a mutable …","Cast from a color type reference to an unsigned integer …","Cast from a slice of colors to a slice of unsigned …","Cast from a boxed slice of colors to a boxed slice of …","Cast from a mutable slice of colors to a mutable slice of …","Cast from a Vec of colors to a Vec of unsigned integers.","Cast this collection of colors into a collection of …","The type of error that occurred.","Map values of color A to values of color B without …","Map values of color A to values of color B without …","Combine the components of a color into the packed format.","Transform a color value into a packed memory …","","","","","","","","","Try to cast this collection of color components into a …","Try to cast this collection of color components into a …","Try to cast this collection of color components into a …","","","","","","","","","","","","","Cast from a slice of color components to a slice of colors.","Cast from a boxed slice of color components to a boxed …","Cast from a mutable slice of color components to a slice …","Cast from a Vec of color components to a Vec of colors.","Try to cast a collection of color components into an …","","","","","","","","","","","","","","","","Cast this collection of unsigned integers into a …","Cast this collection of unsigned integers into a mutable …","Cast a collection of colors into a collection of unsigned …","","","","","","Cast this collection of unsigned integers into a …","","","","","","Split the packed color into its separate components.","Transform a packed color into a regular color value.","The original values.","The original values.","Trait to convert color from one reference white point to …","Trait to convert color with one reference white point into …","Bradford chromatic adaptation method","Holds the matrix coefficients for the chromatic adaptation …","Chromatic adaptation methods implemented in the library","Generates a conversion matrix to convert the Xyz …","VonKries chromatic adaptation method","XyzScaling chromatic adaptation method","Convert the source color to the destination color using …","Convert the source color to the destination color using …","Convert the source color to the destination color using …","Convert the source color to the destination color using …","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Generates a 3x3 transformation matrix to convert color …","Get the cone response functions for the chromatic …","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","3x3 matrix for the inverse of the cone response domains","3x3 matrix for the cone response domains","","","","","","","","","","","","","","","Calculate the CIEDE2000 ΔE* (Delta E) color difference …","A trait for calculating the color difference between two …","Calculate the ΔE color difference between two colors.","Calculate the distance between two colors as if they were …","Calculate a combination of Euclidean and …","Calculate the CIEDE2000 ΔE’ (improved IEDE2000 ΔE*) …","Calculate the ΔE’ (improved ΔE) color difference …","The type of the calculated color difference.","The type for the ΔE* (Delta E).","The type for the distance value.","The scalar type used for luminance and contrast.","The type for the distance value.","The type for the distance value.","Calculate and check the WCAG 2.1 relative contrast and …","Calculate the ΔE color difference metric for self and …","Calculate the CIEDE2000 ΔE* (Delta E) color difference …","Calculate the Euclidean distance from self to other.","Calculate the squared Euclidean distance from self to other…","Return the difference or distance between two colors.","Verify the contrast between two colors satisfies SC 1.4.6 …","Verify the contrast between two colors satisfies SC 1.4.6. …","Verify the contrast between two colors satisfies SC 1.4.11 …","Verify the contrast between two colors satisfies SC 1.4.3 …","Verify the contrast between two colors satisfies SC 1.4.3. …","Calculate the hybrid distance between self and other.","Calculate the ΔE’ (improved ΔE) color difference …","Calculate the CIEDE2000 ΔE’ (improved IEDE2000 ΔE*) …","Returns the WCAG 2.1 relative luminance contrast between …","Returns the WCAG 2.1 relative luminance of self.","A trait for converting one color from another, in a …","Temporarily convert colors in place.","A scope guard that restores the guarded colors to their …","A trait for unchecked conversion of one color from another.","","Temporarily convert colors in place, without clamping.","A scope guard that restores the guarded colors to their …","A trait for converting a color into another, in a possibly …","Temporarily convert colors in place. The Into counterpart …","A trait for unchecked conversion of a color into another.","Temporarily convert colors in place. The Into counterpart …","The error type for a color conversion that converted a …","A trait for fallible conversion of one color from another.","A trait for fallible conversion of a color into another.","","","","","","","","","","","","","","","","Consume this error and return the wrapped color","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Convert from T with values clamped to the color defined …","Temporarily convert from another color type in place.","Convert from T. The resulting color might be invalid in …","Temporarily convert from another color type in place, …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","Replace this guard with a guard that clamps the colors …","Convert into T with values clamped to the color defined …","","","","Temporarily convert to another color type in place.","Convert into T. The resulting color might be invalid in …","","","","Temporarily convert to another color type in place, …","","","","Replace this guard with a guard that does not clamp the …","Immediately restore the colors to their original type.","Immediately restore the colors to their original type.","Convert the colors to another type and replace this guard.","Convert the colors to another type and replace this guard.","Convert the colors to another type, without clamping, and …","Convert the colors to another type, without clamping, and …","","","","","","","","Convert from T, returning ok if the color is inside of its …","","","","Convert into T, returning ok if the color is inside of its …","","","","","","","","","","","","","","A transfer function from linear space.","","A transfer function to linear space.","","","Convert the color component linear from linear space.","Gamma encoding.","Convert the color component encoded into linear space.","Linear encoding","The sRGB standard.","Represents 2.2f64.","Gamma encoding.","The transfer function for gamma encoded colors.","A type level float constant.","The represented number.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A generic standard with linear components.","Linear color component encoding.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","The sRGB standard, color space, and transfer function.","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","HSL color space.","Linear HSL with an alpha component. See the Hsla …","An iterator for Hsl values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, lightness) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, lightness) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Decides how light the color will look. 0.0 will be black, …","Return the lightness value maximum.","Return the saturation value maximum.","Return the lightness value minimum.","Return the saturation value minimum.","Create an HSL color.","Create an HSL color. This is the same as Hsl::new without …","Create an sRGB HSL color. This method can be used instead …","Create an sRGB HSL color. This is the same as Hsl::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color. 0.0 gives gray scale colors …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","Create a struct of vectors with a minimum capacity. See …","HSLuv color space.","HSLuv with an alpha component. See the Hsluva …","An iterator for Hsluv values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, l) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, l) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","Decides how light the color will look. 0.0 will be black, …","","Return the l value maximum.","Return the saturation value maximum.","Return the l value minimum.","Return the saturation value minimum.","Create an HSLuv color.","Create an HSLuv color. This is the same as Hsluv::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color, as a percentage of the …","Update this color with new values.","","","","","","","","","The white point and RGB primaries this color is adapted …","Create a struct of vectors with a minimum capacity. See …","HSV color space.","Linear HSV with an alpha component. See the Hsva …","An iterator for Hsv values.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, saturation, value) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, saturation, value) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the saturation value maximum.","Return the value value maximum.","Return the saturation value minimum.","Return the value value minimum.","Create an HSV color.","Create an HSV color. This is the same as Hsv::new without …","Create an sRGB HSV color. This method can be used instead …","Create an sRGB HSV color. This is the same as Hsv::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The colorfulness of the color. 0.0 gives gray scale colors …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","Decides how bright the color will look. 0.0 will be black, …","Create a struct of vectors with a minimum capacity. See …","A hue type for the CIE L*a*b* family of color spaces.","Iterator over LabHue values.","A hue type for the CIE L*u*v* family of color spaces.","Iterator over LuvHue values.","A hue type for the Oklab color space.","Iterator over OklabHue values.","A hue type for the RGB family of color spaces.","Iterator over RgbHue values.","","","","","","","","","","","","","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","Borrow this hue’s value as shared references.","","","","","","","","","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Clear the hue vector. See Vec::clear for details.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","Get an owned, cloned version of this hue.","","","","","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","Get an owned, copied version of this hue.","","","","","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Return an iterator that moves hues out of the specified …","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Returns a hue from a and b, normalized to [0°, 360°).","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Create a new hue from degrees. This is an alias for new.","Convert from another angle type.","Convert from another angle type.","Convert from another angle type.","Convert from another angle type.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","Create a new hue from radians, instead of degrees.","","","","","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, with references to the values …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Get a hue, or slice of hues, that allows modifying the …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","Returns a and b values for this hue, normalized to [-1, 1].","","","","","","","","","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Get the hue as degrees, in the range (-180, 180].","Convert into another angle type.","Convert into another angle type.","Convert into another angle type.","Convert into another angle type.","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","Get the internal representation without normalizing or …","","","","","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive degrees, in the range [0, 360).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to positive radians, in the range [0, 2π).","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Convert the hue to radians, in the range (-π, π].","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as degrees, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","Get the internal representation as radians, without …","","","","","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator over the hues in the wrapped collection.","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","Return an iterator that allows modifying the hues in the …","","","","","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","Create a new hue, specified in the default unit for the …","","","","","","","","","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Pop a hue from the hue vector. See Vec::pop for details.","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Push an additional hue onto the hue vector. See Vec::push …","Update this hue with a new value.","Update this hue with a new value.","Update this hue with a new value.","Update this hue with a new value.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","Create a struct with a vector with a minimum capacity. See …","HWB color space.","Linear HWB with an alpha component. See the Hwba …","An iterator for Hwb values.","","","","Borrow this color’s components as shared references.","The blackness of the color. It specifies the amount black …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (hue, whiteness, blackness) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (hue, whiteness, blackness) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the blackness value maximum.","Return the whiteness value maximum.","Return the blackness value minimum.","Return the whiteness value minimum.","Create an HWB color.","Create an HWB color. This is the same as Hwb::new without …","Create an sRGB HWB color. This method can be used instead …","Create an sRGB HWB color. This is the same as Hwb::new_srgb…","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","The white point and RGB primaries this color is adapted …","","","","","","","","The whiteness of the color. It specifies the amount white …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lab values.","The CIE L*a*b* (CIELAB) color space.","CIE L*a*b* (CIELAB) with an alpha component. See the Laba …","a* goes from red at -128 to green at 127.","","","","Borrow this color’s components as shared references.","b* goes from yellow at -128 to blue at 127.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, a\\\\*, b\\\\*) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L\\\\*, a\\\\*, b\\\\*) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the a value maximum.","Return the b value maximum.","Return the l value maximum.","Return the a value minimum.","Return the b value minimum.","Return the l value minimum.","Create a CIE L*a*b* color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lch values.","CIE L*C*h°, a polar version of CIE L*a*b*.","CIE L*C*h° with an alpha component. See the Lcha …","","","","Borrow this color’s components as shared references.","","","C* is the colorfulness of the color. It’s similar to …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, C\\\\*, h°) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (L\\\\*, C\\\\*, h°) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the chroma value maximum. This value does not cover …","Return the chroma extended maximum value. This value …","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create a CIE L*C*h° color.","Create a CIE L*C*h° color. This is the same as Lch::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","An iterator for Lchuv values.","CIE L*C*uv h°uv, a polar version of CIE L*u*v*.","CIE L*C*uv h°uv with an alpha component. See the Lchuva …","","","","Borrow this color’s components as shared references.","","","C*uv is the colorfulness of the color. It’s similar to …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, C\\\\*uv, h°uv) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees. Decides if it’s red, …","Calls U::from(self).","","","","Convert to a (L\\\\*, C\\\\*uv, h°uv) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the chroma value maximum.","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create a CIE L*C*uv h°uv color.","Create a CIE L*C*uv h°uv color. This is the same as …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Gamma 2.2 encoded luminance.","Gamma 2.2 encoded luminance with an alpha component.","An iterator for Luma values.","Linear luminance.","Linear luminance with an alpha component.","Luminance.","A white point and a transfer function.","Luminance with an alpha component. See the Lumaa …","A packed representation of Luma+Alpha in AL order.","A packed representation of Luma+Alpha in LA order.","sRGB encoded luminance.","sRGB encoded luminance with an alpha component.","The transfer function for the luminance component.","The white point of the color space.","","","","","","","","","","","","","","","","","","","","Borrow this color’s components as shared references.","","","","","","","Channel orders for packed Luma types.","","","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","Return an iterator that moves colors out of the specified …","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","Convert from a (luma,) tuple.","Convert from linear luminance from a different encoding.","Convert from another component type.","","Convert linear luminance to non-linear luminance.","","","Convert from a packed u16 with a specific component order.","Convert from a packed u16 with specifiable component order.","Get a color, or slice of colors, with references to the …","","Get a color, or slice of colors, that allows modifying the …","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Convert to a (luma,) tuple.","Convert a linear color to a different encoding.","Convert into another component type.","","","","","Convert the color to linear luminance.","","","Convert to a packed u16 with with a specific component …","Convert to a packed u16 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","The lightness of the color. 0.0 is black and 1.0 is white.","Return the luma value maximum.","Return the luma value minimum.","","","","","","","Create a luminance color.","","","","","","Pop a color’s components from the component vectors. See …","","Push an additional color’s components onto the component …","","","","","","","","Update this color with new values.","","","The kind of RGB standard. sRGB is the default.","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","","","Luma+Alpha color packed in AL order.","Luma+Alpha color packed in LA order.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An iterator for Luv values.","The CIE L*u*v* (CIELUV) color space.","CIE L*u*v* (CIELUV) with an alpha component. See the Luva …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L\\\\*, u\\\\*, v\\\\*) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L\\\\*, u\\\\*, v\\\\*) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L* is the lightness of the color. 0.0 gives absolute black …","","Return the l value maximum.","Return the u value maximum.","Return the v value maximum.","Return the l value minimum.","Return the u value minimum.","Return the v value minimum.","Create a CIE L*u*v* color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","The range of valid u* varies depending on the values of L* …","","","The range of valid v* varies depending on the values of L* …","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get a SVG/CSS3 color by name. Can be toggled with the …","Method for getting the absolute value of a number.","A helper trait that collects arithmetic traits under one …","Method for getting the cube root of a number.","Trait for clamping a value.","Assigning trait for clamping a value.","Methods for calculating e ^ x,","Trait for creating a vectorized value from a scalar value.","Conversion from an array of scalars to a vectorized value.","Methods for calculating the lengths of a hypotenuse.","Conversion from a vectorized value to an array of scalars.","Methods for checking if a number can be used as a divisor.","Methods for getting the largest or smallest of two values.","Combined multiplication and addition operation.","Combined multiplication and subtraction operation.","Methods for the value 1.","The resulting type.","The resulting type.","Trait for lanewise comparison of two values.","Method for raising a number by a real number exponent.","Method for raising a number by a signed integer exponent.","Method for raising a number by a n unsigned integer …","Numbers that belong to the real number set. It’s both a …","Method for calculating 1 / x.","Methods for rounding numbers to integers.","Saturating addition operation.","Saturating subtraction operation.","The scalar type that is stored in each lane of Self. …","Method for getting the square root of a number.","Trigonometry methods and their inverses.","Methods for the value 0.","Returns the absolute value of self.","Compute the arccosine in radians of self.","Compute the arcsine in radians of self.","Compute the arctangent in radians of self.","Compute the arctangent in radians of self (y) and other …","Returns the cube root of self.","Return the smallest integer greater than or equal to self.","Clamp self to be within the range [min, max].","Clamp self to be within the range [min, max].","Clamp self to be within the range (-∞, max].","Clamp self to be within the range (-∞, max].","Clamp self to be within the range [min, ∞).","Clamp self to be within the range [min, ∞).","Compute the cosine of self (in radians).","Compares self == other.","Return e ^ self.","Return the largest integer less than or equal to self.","Creates a vectorized value from an array of scalars.","Create a number from an f64 value, mainly for converting …","Create a new vectorized value where each lane is scalar. …","Compares self > other.","Compares self >= other.","Returns the length of the hypotenuse formed by self and …","Creates an array of scalars from a vectorized value.","Return true if self can be used as a divisor in x / self.","Compares self < other.","Compares self <= other.","Return the largest of self and other.","Return the smallest of self and other.","Return a pair of self and other, where the smallest is the …","Multiplies self with m and add a, as in (self * m) + a.","Multiplies self with m and subtract s, as in (self * m) - s…","Compares self != other.","Create a new 1 value.","Return self raised to the power of exp.","Return self raised to the power of exp.","Return self raised to the power of exp.","Return 1 / self.","Return the nearest integer to self. Round half-way cases …","Returns the sum of self and other, but saturates instead …","Returns the difference of self and other, but saturates …","Compute the sine of self (in radians).","Simultaneously compute the sine and cosine of self (in …","Returns the square root of self.","Compute the tangent of self (in radians).","Create a new 0 value.","An iterator for Okhsl values.","A Hue/Saturation/Lightness representation of Oklab in the …","Okhsl with an alpha component.","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, s, l) tuple.","Convert from another component type.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, s, l) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","The relative luminance of the color, where","Return the lightness value maximum.","Return the saturation value maximum.","Return the lightness value minimum.","Return the saturation value minimum.","Create an Okhsl color.","Create an Okhsl color. This is the same as Okhsl::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The saturation (freedom of black or white) of the color.","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","An iterator for Okhsv values.","A Hue/Saturation/Value representation of Oklab in the sRGB …","Okhsv with an alpha component. See the Okhsva …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, s, v) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, s, v) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the saturation value maximum.","Return the value value maximum.","Return the saturation value minimum.","Return the value value minimum.","Create an Okhsv color.","Create an Okhsv color. This is the same as Okhsv::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","The saturation (freedom of whitishness) of the color.","Update this color with new values.","","","","","","","","","The monochromatic brightness of the color.","Create a struct of vectors with a minimum capacity. See …","An iterator for Okhwb values.","A Hue/Whiteness/Blackness representation of Oklab in the …","Okhwb with an alpha component. See the Okhwba …","","","","Borrow this color’s components as shared references.","The amount of black, mixed in the pure hue, ranging from …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (h, w, b) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","The hue of the color, in degrees of a circle.","Calls U::from(self).","","","","Convert to a (h, w, b) tuple.","Convert into another component type.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the blackness value maximum.","Return the whiteness value maximum.","Return the blackness value minimum.","Return the whiteness value minimum.","Create an Okhwb color.","Create an Okhwb color. This is the same as Okhwb::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The amount of white, mixed in the pure hue, ranging from …","Create a struct of vectors with a minimum capacity. See …","An iterator for Oklab values.","The Oklab color space.","Oklab with an alpha component.","a changes the hue from reddish to greenish, when moving …","","","","Borrow this color’s components as shared references.","b changes the hue from yellowish to blueish, when moving …","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L, a, b) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (L, a, b) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","l is the lightness of the color. 0 gives absolute black …","","Return the l value maximum.","Return the l value minimum.","Create an Oklab color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","An iterator for Oklch values.","Oklch, a polar version of Oklab.","Oklch with an alpha component. See the Oklcha …","","","","Borrow this color’s components as shared references.","","","chroma is the colorfulness of the color. A color with …","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (L, C, h) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","h is the hue of the color, in degrees. Decides if it’s …","Calls U::from(self).","","","","Convert to a (L, C, h) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","L is the lightness of the color. 0 gives absolute black …","","Return the l value maximum.","Return the chroma value minimum.","Return the l value minimum.","Create an Oklch color.","Create an Oklch color. This is the same as Oklch::new …","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","Error type for parsing a string of hexadecimal characters …","Gamma 2.2 encoded sRGB.","Gamma 2.2 encoded sRGB with an alpha component.","The hex value was not in a valid 3 or 6 character format.","An iterator for Rgb values.","Linear sRGB.","Linear sRGB with an alpha component.","A packed representation of RGBA in ABGR order.","A packed representation of RGBA in ARGB order.","A packed representation of RGBA in BGRA order.","A packed representation of RGBA in RGBA order.","An error occurred while parsing the string into a valid …","Represents the red, green and blue primaries of an RGB …","The primaries of the RGB color space.","Generic RGB.","A set of primaries and a white point.","An RGB space and a transfer function.","Generic RGB with an alpha component. See the Rgba …","The hex value was not in a valid 4 or 8 character format.","The RGB color space.","Non-linear sRGB, the most common RGB input/output format.","Non-linear sRGB with an alpha component.","The transfer function for the color components.","The white point of the RGB color space.","","","","","","","","","","","","","","","","","","","","","Borrow this color’s components as shared references.","","","Primary blue.","The amount of blue light, where 0.0 is no blue light and …","","","","","","","Channel orders for packed RGBA types.","","","Clear the component vectors. See Vec::clear for details.","","","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","","","","","","","","","","Return an iterator that moves colors out of the specified …","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","Convert from a (red, green, blue) tuple.","Convert linear RGB from a different encoding.","Convert the RGB components from another number type.","","Convert linear RGB to non-linear RGB.","","","","Parses a color hex code of format ‘#ff00bbff’ or ‘…","Parses a color hex code of format ‘#ff00bb’ or ‘#abc…","Convert from a packed u32 with specifiable component order.","Convert from a packed u32 with specifiable component order.","Get a color, or slice of colors, with references to the …","","","Get a color, or slice of colors, that allows modifying the …","Primary green.","The amount of green light, where 0.0 is no green light and …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Convert to a (red, green, blue) tuple.","Convert a linear color to a different encoding.","Convert the RGB components into another number type.","","","","","Convert the color to linear RGB.","","","","Convert to a packed u32 with with specifiable component …","Convert to a packed u32 with with specifiable component …","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","","","","","Return the blue value maximum.","Return the green value maximum.","Return the red value maximum.","Return the blue value minimum.","Return the green value minimum.","Return the red value minimum.","","","","","","","Create an RGB color.","","","","","","Pop a color’s components from the component vectors. See …","","Push an additional color’s components onto the component …","Primary red.","The amount of red light, where 0.0 is no red light and 1.0 …","","","","Get a pre-defined matrix for converting an RGB value with …","","","","","Update this color with new values.","","","","The kind of RGB standard. sRGB is the default.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a struct of vectors with a minimum capacity. See …","","","Get a pre-defined matrix for converting an XYZ value into …","RGBA color packed in ABGR order.","RGBA color packed in ARGB order.","RGBA color packed in BGRA order.","RGBA color packed in RGBA order.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Converts from a stimulus color component type, while …","Converts into a stimulus color component type, while …","Color components that represent a stimulus intensity.","A marker trait for colors where all components are stimuli.","Converts other into Self, while performing the appropriate …","Converts self into T, while performing the appropriate …","The highest displayable value this component type can …","CIE standard illuminant A","Represents an unspecified reference white point.","CIE standard illuminant B","CIE standard illuminant C","CIE D series standard illuminant - D50","CIE D series standard illuminant - D50","CIE D series standard illuminant - D55","CIE D series standard illuminant - D55","CIE D series standard illuminant - D65","CIE D series standard illuminant - D65","CIE D series standard illuminant - D75","CIE D series standard illuminant - D75","CIE standard illuminant E","CIE fluorescent illuminant series - F11","CIE fluorescent illuminant series - F2","CIE fluorescent illuminant series - F7","WhitePoint defines the Xyz color co-ordinates for a given …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the Xyz chromaticity co-ordinates for the white point.","","","","","","","","","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An iterator for Xyz values.","The CIE 1931 XYZ color space.","CIE 1931 XYZ with an alpha component. See the Xyza …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (X, Y, Z) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (X, Y, Z) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","Return the x value maximum.","Return the y value maximum.","Return the z value maximum.","Return the x value minimum.","Return the y value minimum.","Return the z value minimum.","Create a CIE XYZ color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Changes the reference white point without changing the …","X is the scale of what can be seen as a response curve for …","Y is the luminance of the color, where 0.0 is black and …","Z is the scale of what can be seen as the blue …","An iterator for Yxy values.","The CIE 1931 Yxy (xyY) color space.","CIE 1931 Yxy (xyY) with an alpha component. See the Yxya …","","","","Borrow this color’s components as shared references.","","","Clear the component vectors. See Vec::clear for details.","Get an owned, cloned version of this color.","Get an owned, cloned version of this color.","","Get an owned, copied version of this color.","Get an owned, copied version of this color.","","Return an iterator that moves colors out of the specified …","Returns the argument unchanged.","","Convert from a (x, y, luma), a.k.a. (x, y, Y) tuple.","","Get a color, or slice of colors, with references to the …","Get a color, or slice of colors, that allows modifying the …","Calls U::from(self).","","","","Convert to a (x, y, luma), a.k.a. (x, y, Y) tuple.","","","Return an iterator over the colors in the wrapped …","Return an iterator that allows modifying the colors in the …","","luma (Y) was a measure of the brightness or luminance of a …","Return the luma value maximum.","Return the x value maximum.","Return the y value maximum.","Return the luma value minimum.","Return the x value minimum.","Return the y value minimum.","Create a CIE Yxy color.","","","Pop a color’s components from the component vectors. See …","Push an additional color’s components onto the component …","Update this color with new values.","","","","","","","","","The white point associated with the color’s illuminant …","Create a struct of vectors with a minimum capacity. See …","Changes the reference white point without changing the …","x chromaticity co-ordinate derived from XYZ color space as …","y chromaticity co-ordinate derived from XYZ color space as …"],"i":[0,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,0,0,0,0,0,219,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,143,144,141,142,222,223,150,151,147,148,224,225,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,17,24,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,0,75,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,4,4,5,5,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,17,20,24,26,27,17,24,16,23,0,17,20,24,26,27,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,18,19,25,0,100,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,101,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,75,0,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,0,222,223,222,223,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,18,224,225,224,225,17,18,17,20,24,26,27,17,17,20,20,24,24,26,26,27,27,17,17,20,20,24,24,26,26,27,27,0,2,4,5,12,12,13,13,14,14,15,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,60,61,61,59,62,62,2,2,2,2,2,2,4,4,4,4,4,4,5,5,5,5,5,5,12,12,12,13,13,13,14,14,14,15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,19,19,19,19,19,19,20,20,20,20,20,20,20,21,21,21,21,21,22,22,22,22,22,22,23,23,23,23,23,24,24,24,24,24,24,24,25,25,25,25,25,25,26,26,26,26,26,26,26,27,27,27,27,27,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,18,221,2,4,5,16,17,18,19,20,21,23,24,25,26,27,137,2,4,5,16,17,18,19,20,21,22,23,24,25,221,221,221,221,221,221,221,221,221,221,0,0,0,2,4,5,16,18,19,21,22,23,25,0,0,17,20,24,17,18,17,20,24,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,4,4,4,5,5,5,12,12,12,13,13,13,14,14,14,15,15,15,16,16,16,17,17,17,18,18,18,19,19,19,20,20,20,21,21,21,22,22,22,23,23,23,24,24,24,25,25,25,26,26,26,27,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,139,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,4,17,18,19,20,24,25,0,0,0,141,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,142,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,141,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,142,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,21,0,27,0,143,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,144,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,17,17,20,20,24,24,26,26,27,27,17,17,20,20,24,24,26,26,27,27,0,0,0,0,0,0,0,127,17,20,24,26,27,17,20,24,26,27,17,20,24,26,27,17,20,24,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,0,147,2,4,5,18,19,21,22,148,2,4,5,18,19,21,22,147,2,4,5,18,19,21,22,148,2,4,5,18,19,21,22,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,4,5,21,22,149,2,4,5,16,18,19,21,22,23,25,150,2,4,5,16,18,19,21,22,23,25,151,2,4,5,16,18,19,21,22,23,25,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,5,16,0,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,2,4,4,5,5,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,127,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,2,2,4,4,4,5,5,5,12,13,14,15,16,16,16,17,17,17,18,18,18,19,19,19,20,20,20,21,21,21,22,22,22,23,23,23,24,24,24,25,25,25,26,26,26,27,27,27,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,20,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2,4,5,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,17,20,24,26,27,20,5,22,0,4,17,18,19,20,26,27,16,23,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,152,2,4,5,16,18,19,21,22,23,25,127,2,4,5,16,17,18,19,20,21,22,23,24,25,26,27,26,27,17,20,24,26,27,0,26,27,0,26,0,127,0,0,0,127,75,75,104,75,75,75,75,75,75,104,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,104,75,104,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,75,75,75,75,104,75,75,75,75,75,75,104,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,104,127,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,104,75,127,75,75,75,75,75,75,127,104,75,104,75,75,75,75,104,75,104,75,104,75,104,75,104,75,75,127,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,127,75,75,0,0,0,0,0,0,0,0,9,6,130,226,227,228,7,191,6,155,0,0,0,229,0,157,157,0,0,155,155,157,157,157,157,157,0,0,0,0,155,97,157,157,155,157,66,154,155,156,157,66,66,66,66,66,66,66,66,154,154,33,154,154,155,156,157,66,154,155,156,157,66,66,66,66,66,230,66,229,66,154,155,156,157,66,154,155,156,157,66,231,66,154,155,156,157,66,154,155,156,157,66,66,154,154,154,155,156,157,66,231,66,66,66,66,66,66,66,156,231,66,66,66,66,66,66,66,231,66,154,155,156,157,66,154,155,156,157,66,231,66,154,155,156,157,66,154,155,156,157,66,66,66,66,66,66,66,66,66,66,66,66,66,66,154,155,156,157,66,154,154,154,155,156,157,66,231,66,230,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,231,66,66,66,66,66,66,66,66,66,231,66,66,66,230,66,230,66,231,66,230,66,97,66,231,66,231,66,156,66,66,66,66,66,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,66,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,154,155,156,157,66,66,97,66,230,66,0,0,0,0,82,0,232,232,232,233,234,99,0,0,0,0,0,0,0,0,0,0,0,0,0,163,0,0,0,0,0,235,236,237,238,0,0,0,0,0,0,163,0,0,0,0,0,0,168,0,0,0,0,0,0,0,160,161,162,163,159,239,240,241,160,161,162,163,159,242,160,161,162,163,159,243,244,245,246,159,159,159,159,159,159,247,248,160,161,162,163,159,160,161,162,163,159,159,160,161,162,163,159,160,161,162,163,159,159,249,250,251,160,161,162,163,159,252,160,161,162,163,159,160,161,162,163,159,160,160,161,161,162,162,163,159,160,161,162,163,159,159,159,159,159,159,159,159,159,159,159,160,161,162,163,159,0,0,0,0,0,0,0,0,0,253,0,0,0,0,0,254,160,161,162,163,159,0,0,0,0,0,0,0,0,255,160,161,162,163,159,160,161,162,163,159,0,0,0,0,0,0,0,0,0,256,160,161,162,163,159,160,161,162,163,159,0,0,0,0,0,257,160,161,162,163,159,0,0,0,0,0,0,0,0,258,162,0,0,165,159,160,161,162,163,159,160,161,162,235,236,238,160,161,162,163,159,160,161,162,163,159,159,159,0,0,0,0,237,160,161,162,163,159,160,161,162,163,159,160,161,162,163,159,259,260,261,160,161,162,163,159,262,160,161,162,163,159,165,159,161,162,0,0,174,0,0,0,174,174,263,263,264,264,174,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,28,28,174,174,173,174,173,174,173,174,173,174,173,173,173,174,173,174,173,174,173,174,173,174,173,174,173,174,173,0,0,0,0,0,0,0,265,266,267,268,269,270,0,270,266,267,267,265,268,268,268,268,268,269,271,272,268,268,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,86,94,67,86,94,67,86,94,67,86,94,67,86,94,94,67,86,94,67,86,67,86,94,67,86,94,94,67,86,94,67,86,94,273,176,274,178,67,86,94,67,86,94,67,86,94,86,275,67,86,94,276,74,67,86,94,277,67,86,94,67,67,86,67,86,67,86,94,67,86,94,67,86,94,278,67,86,94,279,67,86,94,67,86,94,67,86,94,67,86,94,0,0,0,0,0,0,280,0,281,0,0,0,0,0,0,180,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,182,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,182,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,181,182,183,0,0,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,184,128,184,128,184,128,184,128,184,128,184,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,128,184,0,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,0,0,0,115,115,115,2,115,115,2,2,2,115,2,2,115,2,115,115,2,2,115,2,2,2,115,115,115,115,2,2,115,115,2,2,115,2,2,2,2,2,2,2,2,2,115,115,2,2,2,2,115,2,115,115,115,115,115,115,115,2,0,0,0,108,108,108,4,108,108,4,4,4,108,4,4,108,4,108,108,4,108,4,4,4,108,108,108,108,4,108,108,4,4,4,108,4,4,4,4,4,4,108,108,4,4,4,4,108,108,108,108,108,108,108,108,4,4,0,0,0,116,116,116,5,116,116,5,5,5,116,5,5,116,5,116,116,5,5,116,5,5,5,116,116,116,116,5,5,116,116,5,5,116,5,5,5,5,5,5,5,5,116,116,5,5,5,5,116,5,116,116,116,116,116,116,116,5,5,0,0,0,0,0,0,0,0,187,188,189,190,187,188,189,190,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,12,13,13,14,14,15,15,187,188,189,190,12,12,13,13,14,14,15,15,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,12,13,14,15,187,188,189,190,12,13,14,15,187,188,189,190,187,188,189,190,12,13,14,15,12,13,14,15,12,13,14,15,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,187,188,189,190,12,13,14,15,0,0,0,119,119,119,16,16,119,119,16,16,16,119,16,16,119,16,119,119,16,16,119,16,16,16,119,119,119,119,16,16,119,119,16,16,119,16,16,16,16,16,16,16,16,119,119,16,16,16,119,16,119,119,119,119,119,119,119,16,16,0,0,0,17,112,112,112,17,17,112,112,17,17,17,112,17,17,112,17,112,112,17,112,17,17,112,112,112,112,17,112,112,17,17,17,112,17,17,17,17,17,17,17,112,112,17,17,17,112,112,112,112,112,112,112,112,17,17,0,0,0,111,111,111,18,111,111,18,18,18,18,111,18,18,111,18,111,111,18,111,18,18,18,111,111,111,111,18,111,111,18,18,18,111,18,18,18,18,18,18,18,111,111,18,18,18,111,111,111,111,111,111,111,111,18,18,0,0,0,114,114,114,19,114,114,19,19,19,19,114,19,19,114,19,114,114,19,114,19,19,19,114,114,114,114,19,114,114,19,19,19,114,19,19,19,19,19,19,114,114,19,19,19,114,114,114,114,114,114,114,114,19,19,0,0,0,0,0,0,0,0,0,0,0,0,72,72,73,73,73,73,121,73,73,73,73,73,121,73,121,73,73,73,73,73,73,73,73,73,73,121,73,121,0,73,73,73,73,73,73,73,73,121,73,73,121,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,164,164,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,121,73,121,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,121,164,73,73,73,73,73,73,121,73,121,73,121,73,73,121,73,73,73,73,73,73,73,121,73,73,121,164,73,73,73,73,121,73,73,73,73,73,73,73,73,73,73,73,73,73,73,121,121,73,73,73,73,73,73,73,73,73,73,73,73,73,73,121,73,73,73,73,73,73,73,73,121,73,73,73,121,73,73,121,73,121,73,121,73,121,73,121,73,73,73,73,73,73,73,0,0,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,194,195,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,195,194,194,195,195,0,0,0,123,123,123,20,123,123,20,20,20,123,20,20,123,20,123,123,20,123,20,20,123,123,123,123,20,123,123,20,20,20,123,20,20,20,20,20,20,20,123,123,20,20,20,123,123,123,123,123,123,20,123,123,20,20,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,92,0,0,0,0,0,0,0,0,0,85,0,0,0,49,48,48,48,48,78,199,34,42,34,42,34,42,48,38,47,199,64,36,85,38,38,50,282,68,38,38,69,69,69,186,185,38,37,79,46,283,80,199,91,92,48,48,45,48,8,0,0,0,122,122,122,21,122,122,21,21,21,122,21,21,122,21,122,122,21,21,122,21,21,21,122,122,122,122,21,21,122,122,21,21,122,21,21,21,21,21,21,21,122,122,21,21,21,21,122,122,122,122,122,122,122,122,21,0,0,0,120,120,120,22,120,120,22,22,22,120,22,22,120,22,120,120,22,120,22,22,22,120,120,120,120,22,22,120,120,22,22,120,22,22,22,22,22,22,120,120,22,22,22,22,120,120,120,120,120,120,120,120,22,22,0,0,0,113,113,113,23,23,113,113,23,23,23,113,23,23,113,23,113,113,23,113,23,23,23,113,113,113,113,23,23,113,113,23,23,113,23,23,23,23,23,23,113,113,23,23,23,113,113,113,113,113,113,113,113,23,23,0,0,0,24,110,110,110,24,24,110,110,24,24,24,110,24,24,110,24,110,110,24,110,24,24,110,110,110,110,24,110,110,24,24,24,110,24,24,24,110,110,24,24,24,110,110,110,110,110,110,110,110,24,0,0,0,109,109,109,25,109,109,25,25,25,25,109,25,25,109,25,109,109,25,109,25,25,25,109,109,109,109,25,109,109,25,25,25,109,25,25,25,25,25,109,109,25,25,25,109,109,109,109,109,109,109,109,25,0,0,0,197,0,0,0,0,0,0,0,197,0,129,0,0,0,0,197,71,0,0,71,129,70,70,70,70,118,197,70,70,70,70,70,118,197,70,118,197,70,70,70,70,70,70,70,284,70,70,118,197,70,118,197,0,70,70,70,70,70,70,70,70,118,197,70,70,118,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,197,197,166,166,70,70,70,70,70,70,70,70,70,118,197,197,197,70,118,197,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,118,197,166,70,166,70,70,70,70,70,284,70,70,70,118,197,70,118,197,70,118,197,70,70,118,197,70,70,70,70,70,70,70,118,70,70,118,197,166,70,70,70,70,118,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,118,118,70,70,70,70,70,70,284,70,70,70,70,129,70,70,70,70,70,118,197,70,70,70,70,70,70,70,197,70,118,197,70,70,70,118,197,70,70,118,197,70,118,197,70,118,197,70,118,197,70,118,197,70,70,70,70,70,70,70,129,0,0,0,0,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,201,202,202,203,203,204,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,202,203,204,201,201,202,202,203,203,204,204,0,0,0,0,63,285,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,41,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,171,205,206,207,208,209,83,210,211,212,213,214,215,216,217,218,0,0,0,124,124,124,26,124,124,26,26,26,124,26,26,124,26,124,124,26,124,26,26,124,124,124,124,26,124,124,26,26,124,26,26,26,26,26,26,26,124,124,26,26,26,124,124,124,124,124,124,124,124,26,26,26,26,26,26,0,0,0,117,117,117,27,117,117,27,27,27,117,27,27,117,27,117,117,27,117,27,27,117,117,117,117,27,117,117,27,27,117,27,27,27,27,27,27,27,27,117,117,27,27,27,117,117,117,117,117,117,117,117,27,27,27,27,27],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[2,[1]],[2,[1]]],3],[[[4,[1]],[4,[1]]],3],[[[5,[1]],[5,[1]]],3],[[[12,[[0,[6,7,8,9,10,1,11]]]],[12,[[0,[6,7,8,9,10,1,11]]]]],3],[[[13,[[0,[6,7,8,9,10,1,11]]]],[13,[[0,[6,7,8,9,10,1,11]]]]],3],[[[14,[[0,[6,7,8,9,10,1,11]]]],[14,[[0,[6,7,8,9,10,1,11]]]]],3],[[[15,[[0,[6,7,8,9,10,1,11]]]],[15,[[0,[6,7,8,9,10,1,11]]]]],3],[[[16,[1]],[16,[1]]],3],[[[17,[1]],[17,[1]]],3],[[[18,[1]],[18,[1]]],3],[[[19,[1]],[19,[1]]],3],[[[20,[1]],[20,[1]]],3],[[[21,[1]],[21,[1]]],3],[[[22,[1]],[22,[1]]],3],[[[23,[1]],[23,[1]]],3],[[[24,[1]],[24,[1]]],3],[[[25,[1]],[25,[1]]],3],[[[26,[1]],[26,[1]]],3],[[[27,[1]],[27,[1]]],3],[[[2,[1]],[2,[1]]],3],[[[4,[1]],[4,[1]]],3],[[[5,[1]],[5,[1]]],3],[[[12,[[0,[6,7,8,9,10,1,11]]]],[12,[[0,[6,7,8,9,10,1,11]]]]],3],[[[13,[[0,[6,7,8,9,10,1,11]]]],[13,[[0,[6,7,8,9,10,1,11]]]]],3],[[[14,[[0,[6,7,8,9,10,1,11]]]],[14,[[0,[6,7,8,9,10,1,11]]]]],3],[[[15,[[0,[6,7,8,9,10,1,11]]]],[15,[[0,[6,7,8,9,10,1,11]]]]],3],[[[16,[1]],[16,[1]]],3],[[[17,[1]],[17,[1]]],3],[[[18,[1]],[18,[1]]],3],[[[19,[1]],[19,[1]]],3],[[[20,[1]],[20,[1]]],3],[[[21,[1]],[21,[1]]],3],[[[22,[1]],[22,[1]]],3],[[[23,[1]],[23,[1]]],3],[[[24,[1]],[24,[1]]],3],[[[25,[1]],[25,[1]]],3],[[[26,[1]],[26,[1]]],3],[[[27,[1]],[27,[1]]],3],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[[[2,[29]],[2,[29]]]],[[[2,[[0,[29,11]]]],[0,[29,11]]]],[[[4,[29]],[4,[29]]]],[[[4,[[0,[29,11]]]],[0,[29,11]]]],[[[5,[[0,[29,11]]]],[0,[29,11]]]],[[[5,[29]],[5,[29]]]],[[[12,[29]],[12,[29]]],[[12,[29]]]],[[[12,[29]],29],[[12,[29]]]],[[[13,[29]],[13,[29]]],[[13,[29]]]],[[[13,[29]],29],[[13,[29]]]],[[[14,[29]],[14,[29]]],[[14,[29]]]],[[[14,[29]],29],[[14,[29]]]],[[[15,[29]],29],[[15,[29]]]],[[[15,[29]],[15,[29]]],[[15,[29]]]],[[[16,[[0,[29,11]]]],[0,[29,11]]]],[[[16,[29]],[16,[29]]]],[[[17,[29]],[17,[29]]]],[[[17,[[0,[29,11]]]],[0,[29,11]]]],[[[18,[[0,[29,11]]]],[0,[29,11]]]],[[[18,[29]],[18,[29]]]],[[[19,[29]],[19,[29]]]],[[[19,[[0,[29,11]]]],[0,[29,11]]]],[[[20,[29]],[20,[29]]]],[[[20,[[0,[29,11]]]],[0,[29,11]]]],[[[21,[29]],[21,[29]]]],[[[21,[[0,[29,11]]]],[0,[29,11]]]],[[[22,[29]],[22,[29]]]],[[[22,[[0,[29,11]]]],[0,[29,11]]]],[[[23,[[0,[29,11]]]],[0,[29,11]]]],[[[23,[29]],[23,[29]]]],[[[24,[[0,[29,11]]]],[0,[29,11]]]],[[[24,[29]],[24,[29]]]],[[[25,[[0,[29,11]]]],[0,[29,11]]]],[[[25,[29]],[25,[29]]]],[[[26,[[0,[29,11]]]],[0,[29,11]]]],[[[26,[29]],[26,[29]]]],[[[27,[29]],[27,[29]]]],[[[27,[[0,[29,11]]]],[0,[29,11]]]],[[[2,[[0,[30,11]]]],[0,[30,11]]]],[[[2,[30]],[2,[30]]]],[[[4,[30]],[4,[30]]]],[[[4,[[0,[30,11]]]],[0,[30,11]]]],[[[5,[[0,[30,11]]]],[0,[30,11]]]],[[[5,[30]],[5,[30]]]],[[[12,[30]],30]],[[[12,[30]],[12,[30]]]],[[[13,[30]],[13,[30]]]],[[[13,[30]],30]],[[[14,[30]],[14,[30]]]],[[[14,[30]],30]],[[[15,[30]],30]],[[[15,[30]],[15,[30]]]],[[[16,[[0,[30,11]]]],[0,[30,11]]]],[[[16,[30]],[16,[30]]]],[[[17,[[0,[30,11]]]],[0,[30,11]]]],[[[17,[30]],[17,[30]]]],[[[18,[30]],[18,[30]]]],[[[18,[[0,[30,11]]]],[0,[30,11]]]],[[[19,[[0,[30,11]]]],[0,[30,11]]]],[[[19,[30]],[19,[30]]]],[[[20,[[0,[30,11]]]],[0,[30,11]]]],[[[20,[30]],[20,[30]]]],[[[21,[30]],[21,[30]]]],[[[21,[[0,[30,11]]]],[0,[30,11]]]],[[[22,[[0,[30,11]]]],[0,[30,11]]]],[[[22,[30]],[22,[30]]]],[[[23,[[0,[30,11]]]],[0,[30,11]]]],[[[23,[30]],[23,[30]]]],[[[24,[30]],[24,[30]]]],[[[24,[[0,[30,11]]]],[0,[30,11]]]],[[[25,[30]],[25,[30]]]],[[[25,[[0,[30,11]]]],[0,[30,11]]]],[[[26,[30]],[26,[30]]]],[[[26,[[0,[30,11]]]],[0,[30,11]]]],[[[27,[30]],[27,[30]]]],[[[27,[[0,[30,11]]]],[0,[30,11]]]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[2,31],[2,32],[4,31],[4,32],[5,32],[5,31],[16,31],[16,32],[17,32],[17,31],[18,32],[18,31],[19,31],[19,32],[20,31],[20,32],[21,32],[21,31],[22,31],[22,32],[23,32],[23,31],[24,31],[24,32],[25,32],[25,31],[26,32],[26,31],[27,32],[27,31],[2,31],[2,32],[4,31],[4,32],[5,32],[5,31],[16,32],[16,31],[17,32],[17,31],[18,31],[18,32],[19,31],[19,32],[20,32],[20,31],[21,32],[21,31],[22,31],[22,32],[23,31],[23,32],[24,31],[24,32],[25,31],[25,32],[26,32],[26,31],[27,32],[27,31],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[33],[33],[33],[33],[33],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[]],[[[2,[[0,[34,35]]]]],[[2,[[0,[34,35]]]]]],[[[4,[[0,[34,36,8]]]]],[[4,[[0,[34,36,8]]]]]],[[[5,[[0,[34,35]]]]],[[5,[[0,[34,35]]]]]],[[[16,[[0,[37,34,38,29,39,11,35]]]]],[[16,[[0,[37,34,38,29,39,11,35]]]]]],[[[17,[[0,[34,36,8]]]]],[[17,[[0,[34,36,8]]]]]],[[[18,[[0,[34,36,8]]]]],[[18,[[0,[34,36,8]]]]]],[[[19,[[0,[34,36,8]]]]],[[19,[[0,[34,36,8]]]]]],[[[20,[[0,[34,36,8]]]]],[[20,[[0,[34,36,8]]]]]],[[[21,[[0,[34,35]]]]],[[21,[[0,[34,35]]]]]],[[[22,[[0,[34,36,40,35]]]]],[[22,[[0,[34,36,40,35]]]]]],[[[23,[[0,[37,34,38,29,39,11,35]]]]],[[23,[[0,[37,34,38,29,39,11,35]]]]]],[[[24,[[0,[34,8,37]]]]],[[24,[[0,[34,8,37]]]]]],[[[25,[[0,[34,8,37]]]]],[[25,[[0,[34,8,37]]]]]],[[[26,[[41,[[0,[34,8]]]],[0,[34,8]]]]],[[26,[[41,[[0,[34,8]]]],[0,[34,8]]]]]],[[[27,[[0,[34,8,37]]]]],[[27,[[0,[34,8,37]]]]]],[[]],[[[2,[[0,[42,35]]]]]],[[[4,[[0,[42,36,8]]]]]],[[[5,[[0,[42,35]]]]]],[[[16,[[0,[37,42,38,29,39,11,35]]]]]],[[[17,[[0,[42,36,8]]]]]],[[[18,[[0,[42,36,8]]]]]],[[[19,[[0,[42,36,8]]]]]],[[[20,[[0,[42,36,8]]]]]],[[[21,[[0,[42,35]]]]]],[[[22,[[0,[42,36,40,35]]]]]],[[[23,[[0,[37,42,38,29,39,11,35]]]]]],[[[24,[[0,[42,8,37]]]]]],[[[25,[[0,[42,8,37]]]]]],[[[26,[[41,[[0,[42,8]]]],[0,[42,8]]]]]],[[[27,[[0,[42,8,37]]]]]],[[[2,[11]]],[[2,[11]]]],[[[4,[11]]],[[4,[11]]]],[[[5,[11]]],[[5,[11]]]],[[[12,[11]]],[[12,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[15,[11]]],[[15,[11]]]],[[[16,[11]]],[[16,[11]]]],[[[17,[11]]],[[17,[11]]]],[[[18,[11]]],[[18,[11]]]],[[[19,[11]]],[[19,[11]]]],[[[20,[11]]],[[20,[11]]]],[[[21,[11]]],[[21,[11]]]],[[[22,[11]]],[[22,[11]]]],[[[23,[11]]],[[23,[11]]]],[[[24,[11]]],[[24,[11]]]],[[[25,[11]]],[[25,[11]]]],[[[26,[11]]],[[26,[11]]]],[[[27,[11]]],[[27,[11]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,40,38]],[0,[36,40,38]]],[[0,[36,40,38]]]],0,[[]],[[]],[[]],[[]],[[],[[2,[35]]]],[[],[[4,[[0,[36,8]]]]]],[[],[[5,[35]]]],[[],[[12,[43]]]],[[],[[13,[43]]]],[[],[[14,[43]]]],[[],[[15,[43]]]],[[],[[16,[35]]]],[[],[[17,[8]]]],[[],[[18,[[0,[8,36]]]]]],[[],[[19,[[0,[8,36]]]]]],[[],[[20,[8]]]],[[],[[21,[35]]]],[[],[[22,[35]]]],[[],[[23,[35]]]],[[],[[24,[8]]]],[[],[[25,[[0,[8,37]]]]]],[[],[[26,[8]]]],[[],[[27,[[41,[8]],8]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[],44],[[[17,[45]],[17,[45]]]],[[18,18]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,50,11]]]],[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,50,11]]]]]],[[[18,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]],[18,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]]]],[[[17,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[17,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[20,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[20,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[24,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[24,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[26,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[26,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[27,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[27,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[17,[52]],[17,[52]]]],[[[17,[[0,[52,11]]]],[0,[52,11]]]],[[[20,[[0,[52,11]]]],[0,[52,11]]]],[[[20,[52]],[20,[52]]]],[[[24,[[0,[52,11]]]],[0,[52,11]]]],[[[24,[52]],[24,[52]]]],[[[26,[52]],[26,[52]]]],[[[26,[[0,[52,11]]]],[0,[52,11]]]],[[[27,[52]],[27,[52]]]],[[[27,[[0,[52,11]]]],[0,[52,11]]]],[[[17,[39]],[17,[39]]]],[[[17,[[0,[39,11]]]],[0,[39,11]]]],[[[20,[39]],[20,[39]]]],[[[20,[[0,[39,11]]]],[0,[39,11]]]],[[[24,[39]],[24,[39]]]],[[[24,[[0,[39,11]]]],[0,[39,11]]]],[[[26,[39]],[26,[39]]]],[[[26,[[0,[39,11]]]],[0,[39,11]]]],[[[27,[39]],[27,[39]]]],[[[27,[[0,[39,11]]]],[0,[39,11]]]],0,[[[2,[53]],[2,[53]]],3],[[[4,[53]],[4,[53]]],3],[[[5,[53]],[5,[53]]],3],[[[12,[[0,[9,53]]]],[12,[[0,[9,53]]]]],3],[[[12,[[0,[9,53]]]],[0,[9,53]]],3],[[[13,[[0,[9,53]]]],[13,[[0,[9,53]]]]],3],[[[13,[[0,[9,53]]]],[0,[9,53]]],3],[[[14,[[0,[9,53]]]],[0,[9,53]]],3],[[[14,[[0,[9,53]]]],[14,[[0,[9,53]]]]],3],[[[15,[[0,[9,53]]]],[0,[9,53]]],3],[[[15,[[0,[9,53]]]],[15,[[0,[9,53]]]]],3],[[[16,[53]],[16,[53]]],3],[[[17,[53]],[17,[53]]],3],[[[18,[53]],[18,[53]]],3],[[[19,[53]],[19,[53]]],3],[[[20,[53]],[20,[53]]],3],[[[21,[53]],[21,[53]]],3],[[[22,[53]],[22,[53]]],3],[[[23,[53]],[23,[53]]],3],[[[24,[53]],[24,[53]]],3],[[[25,[53]],[25,[53]]],3],[[[26,[53]],[26,[53]]],3],[[[27,[53]],[27,[53]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[[2,[54]],55]],[[[4,[54]],55]],[[[5,[54]],55]],[[[12,[54]],55]],[[[13,[54]],55]],[[[14,[54]],55]],[[[15,[54]],55]],[[[16,[54]],55]],[[[17,[54]],55]],[[[18,[54]],55]],[[[19,[54]],55]],[[[20,[54]],55]],[[[21,[54]],55]],[[[22,[54]],55]],[[[23,[54]],55]],[[[24,[54]],55]],[[[25,[54]],55]],[[[26,[54]],55]],[[[27,[54]],55]],[[[2,[56,56]],57],58],[[[4,[56,56]],57],58],[[[5,[56,56]],57],58],[[[12,[56]],57],58],[[[13,[56]],57],58],[[[14,[56]],57],58],[[[15,[56]],57],58],[[[16,[56,56]],57],58],[[[17,[56,56]],57],58],[[[18,[56,56]],57],58],[[[19,[56,56]],57],58],[[[20,[56,56]],57],58],[[[21,[56]],57],58],[[[22,[56]],57],58],[[[23,[56]],57],58],[[[24,[56]],57],58],[[[25,[56]],57],58],[[[26,[56,56]],57],58],[[[27,[56,56]],57],58],[59,60],[59,[[61,[35]]]],[62,[[61,[63]]]],[60,59],[61,[[62,[63]]]],[60,[[62,[35]]]],[[]],[[[32,[2]]],[[2,[64]]]],[32,2],[[],2],[32,2],[32,2],[32,4],[32,4],[32,4],[[[32,[4]]],[[4,[64]]]],[[],4],[[]],[[]],[[[32,[5]]],[[5,[64]]]],[32,5],[32,5],[[],5],[32,5],[[]],[65],[[],12],[[]],[65],[[],13],[65],[[],14],[[]],[[],15],[[]],[65],[32,16],[32,16],[[],16],[[[32,[16]]],[[16,[64]]]],[32,16],[[]],[32,17],[[[66,[17]]],17],[[],17],[32,17],[32,17],[[[32,[17]]],[[17,[64]]]],[[]],[32,18],[32,18],[32,18],[[],18],[[]],[[[32,[18]]],[[18,[64]]]],[32,19],[[],19],[[[32,[19]]],[[19,[64]]]],[32,19],[[]],[32,19],[32,20],[32,20],[[[32,[20]]],[[20,[64]]]],[32,20],[[[66,[20]]],20],[[]],[[],20],[[[32,[21]]],[[21,[64]]]],[32,21],[[]],[32,21],[32,21],[[[32,[22]]],[[22,[64]]]],[[]],[[],22],[32,22],[32,22],[32,22],[[]],[[[32,[23]]],[[23,[64]]]],[32,23],[32,23],[32,23],[[],24],[32,24],[32,24],[32,24],[[[32,[24]]],[[24,[64]]]],[[]],[[[66,[24]]],24],[32,25],[32,25],[[[32,[25]]],[[25,[64]]]],[32,25],[[]],[[],25],[[],26],[32,26],[32,26],[[[66,[26]]],26],[[[32,[26]]],[[26,[64]]]],[32,26],[[]],[[[32,[27]]],[[27,[64]]]],[32,27],[[],27],[[]],[32,27],[[[66,[27]]],27],[32,27],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[[5,[[0,[36,8,37,68,40,38,11]]]]],[[2,[[0,[36,8,37,68,40,38,11]]]]]],[[[70,[[0,[6,8,37,69,40,38,11]]]]],[[2,[[0,[6,8,37,69,40,38,11]]]]]],[16,2],[19,[[2,[71]]]],[23,2],[22,2],[26,[[2,[71]]]],[25,2],[21,2],[18,[[2,[71]]]],[[[2,[71]]],[[2,[71]]]],[27,[[2,[71]]]],[20,[[2,[71]]]],[24,2],[[[73,[72]]],[[2,[71]]]],[4,[[2,[71]]]],[[[75,[[74,[2]]]]],2],[17,[[2,[71]]]],[4,4],[[[27,[41]]],[[4,[41]]]],[[[20,[41]]],[[4,[41]]]],[[[75,[[74,[4]]]]],4],[[[17,[41]]],[[4,[41]]]],[24,[[4,[41]]]],[[[5,[71]]],[[4,[41]]]],[[[26,[41]]],[[4,[41]]]],[[[73,[72]]],[[4,[41]]]],[23,[[4,[41]]]],[[[70,[71]]],[[4,[41]]]],[22,[[4,[41]]]],[25,[[4,[41]]]],[[[2,[71]]],[[4,[41]]]],[[[18,[41]]],[[4,[41]]]],[[[16,[71]]],[[4,[41]]]],[21,[[4,[41]]]],[[[19,[[0,[36,6,[77,[76]],46,40,11]]]]],[[4,[[0,[36,6,[77,[76]],46,40,11]]]]]],[[[16,[[0,[37,8,68,40]]]]],[[5,[[0,[37,8,68,40]]]]]],[20,[[5,[71]]]],[[[2,[[0,[36,8,37,68,40,38,11]]]]],[[5,[[0,[36,8,37,68,40,38,11]]]]]],[26,[[5,[71]]]],[22,5],[19,[[5,[71]]]],[[[5,[71]]],[[5,[71]]]],[18,[[5,[71]]]],[[[70,[[0,[6,37,8,69,40,38,11]]]]],[[5,[[0,[6,37,8,69,40,38,11]]]]]],[[[73,[72]]],[[5,[71]]]],[[[75,[[74,[5]]]]],5],[27,[[5,[71]]]],[23,5],[25,5],[24,5],[17,[[5,[71]]]],[4,[[5,[71]]]],[21,5],[24,16],[[[5,[[0,[37,40]]]]],[[16,[[0,[37,40]]]]]],[20,[[16,[71]]]],[[[75,[[74,[16]]]]],16],[25,16],[2,16],[26,[[16,[71]]]],[27,[[16,[71]]]],[18,[[16,[71]]]],[17,[[16,[71]]]],[23,16],[70,16],[19,[[16,[71]]]],[[[73,[72]]],[[16,[71]]]],[21,16],[[[16,[71]]],[[16,[71]]]],[22,16],[4,[[16,[71]]]],[[[26,[[41,[[0,[36,46,78,40,38,11]]]],[0,[36,46,78,40,38,11]]]]],[[17,[[41,[[0,[36,46,78,40,38,11]]]],[0,[36,46,78,40,38,11]]]]]],[[[19,[41]]],[[17,[41]]]],[23,[[17,[41]]]],[25,[[17,[41]]]],[[[27,[41]]],[[17,[41]]]],[[[20,[41]]],[[17,[41]]]],[[[18,[[0,[6,8,69,48,51,11]]]]],[[17,[[0,[6,8,69,48,51,11]]]]]],[[[70,[71]]],[[17,[41]]]],[[[75,[[74,[17]]]]],17],[[[73,[72]]],[[17,[41]]]],[22,[[17,[41]]]],[21,[[17,[41]]]],[[[4,[41]]],[[17,[41]]]],[[[2,[71]]],[[17,[41]]]],[[[16,[71]]],[[17,[41]]]],[17,17],[[[5,[71]]],[[17,[41]]]],[24,[[17,[41]]]],[[[5,[71]]],[[18,[41]]]],[[[2,[71]]],[[18,[41]]]],[[[27,[41]]],[[18,[41]]]],[[[70,[71]]],[[18,[41]]]],[25,[[18,[41]]]],[22,[[18,[41]]]],[21,[[18,[41]]]],[[[75,[[74,[18]]]]],18],[18,18],[24,[[18,[41]]]],[[[17,[[0,[8,50]]]]],[[18,[[0,[8,50]]]]]],[[[16,[71]]],[[18,[41]]]],[[[4,[41]]],[[18,[41]]]],[23,[[18,[41]]]],[[[19,[41]]],[[18,[41]]]],[[[20,[41]]],[[18,[41]]]],[[[26,[41]]],[[18,[41]]]],[[[73,[72]]],[[18,[41]]]],[24,[[19,[41]]]],[[[2,[71]]],[[19,[41]]]],[[[20,[[0,[8,50]]]]],[[19,[[0,[8,50]]]]]],[21,[[19,[41]]]],[[[17,[41]]],[[19,[41]]]],[[[5,[71]]],[[19,[41]]]],[[[70,[71]]],[[19,[41]]]],[25,[[19,[41]]]],[[[27,[41]]],[[19,[41]]]],[[[4,[[0,[36,6,[77,[76]],46,51,11]]]]],[[19,[[0,[36,6,[77,[76]],46,51,11]]]]]],[[[75,[[74,[19]]]]],19],[23,[[19,[41]]]],[[[18,[41]]],[[19,[41]]]],[22,[[19,[41]]]],[19,19],[[[26,[41]]],[[19,[41]]]],[[[73,[72]]],[[19,[41]]]],[[[16,[71]]],[[19,[41]]]],[[[19,[[0,[6,8,69,48,51,11]]]]],[[20,[[0,[6,8,69,48,51,11]]]]]],[[[5,[71]]],[[20,[41]]]],[21,[[20,[41]]]],[[[73,[72]]],[[20,[41]]]],[[[18,[41]]],[[20,[41]]]],[[[70,[71]]],[[20,[41]]]],[23,[[20,[41]]]],[[[75,[[74,[20]]]]],20],[[[2,[71]]],[[20,[41]]]],[[[4,[41]]],[[20,[41]]]],[22,[[20,[41]]]],[[[17,[41]]],[[20,[41]]]],[[[26,[[41,[[0,[36,8,46,79,80,40,81,11,82]]]],[0,[36,8,46,79,80,40,81,11,82]]]]],[[20,[[41,[[0,[36,8,46,79,80,40,81,11,82]]]],[0,[36,8,46,79,80,40,81,11,82]]]]]],[24,[[20,[41]]]],[20,20],[25,[[20,[41]]]],[[[27,[41]]],[[20,[41]]]],[[[16,[71]]],[[20,[41]]]],[[[2,[71]]],21],[[[5,[71]]],21],[[[16,[71]]],21],[[[19,[83]]],21],[[[4,[83]]],21],[[[27,[83]]],21],[[[17,[83]]],21],[22,21],[23,21],[[[70,[71]]],21],[[[18,[83]]],21],[21,21],[[[73,[72]]],21],[25,21],[[[24,[[0,[36,37,8,40,46,45,50,69,78,68,82,81,11]]]]],[[21,[[0,[36,37,8,40,46,45,50,69,78,68,82,81,11]]]]]],[[[20,[83]]],21],[[[75,[[74,[21]]]]],21],[[[26,[83]]],21],[[[23,[[0,[37,8,68,40]]]]],[[22,[[0,[37,8,68,40]]]]]],[[[24,[[0,[36,69,11,46,45,78,40,48,8,50,37,68,82,81]]]]],[[22,[[0,[36,69,11,46,45,78,40,48,8,50,37,68,82,81]]]]]],[[[4,[83]]],22],[[[19,[83]]],22],[[[73,[72]]],22],[[[18,[83]]],22],[[[17,[83]]],22],[[[75,[[74,[22]]]]],22],[[[20,[83]]],22],[[[5,[71]]],22],[[[70,[71]]],22],[25,22],[[[2,[71]]],22],[21,22],[[[16,[71]]],22],[22,22],[[[27,[83]]],22],[[[26,[83]]],22],[21,23],[[[20,[83]]],23],[[[70,[71]]],23],[25,23],[[[73,[72]]],23],[[[75,[[74,[23]]]]],23],[[[2,[71]]],23],[[[27,[83]]],23],[24,23],[[[22,[[0,[37,40]]]]],[[23,[[0,[37,40]]]]]],[[[19,[83]]],23],[[[16,[71]]],23],[[[18,[83]]],23],[[[5,[71]]],23],[[[26,[83]]],23],[[[4,[83]]],23],[[[17,[83]]],23],[[[70,[71,[0,[36,78,40,84]]]]],[[24,[[0,[36,78,40,84]]]]]],[[[25,[[0,[6,8,69,48,51,11]]]]],[[24,[[0,[6,8,69,48,51,11]]]]]],[24,24],[[[19,[83]]],24],[[[16,[71]]],24],[[[22,[[0,[6,81,82,69,46,40,11,37,8,78,48]]]]],[[24,[[0,[6,81,82,69,46,40,11,37,8,78,48]]]]]],[[[27,[83]]],24],[[[5,[71]]],24],[[[20,[83]]],24],[[[73,[72]]],24],[[[26,[83,[0,[36,78,40]]]]],[[24,[[0,[36,78,40]]]]]],[[[17,[83]]],24],[[[2,[71]]],24],[[[75,[[74,[24]]]]],24],[[[21,[[0,[6,37,8,40,45,69,81,82,46,78,48,11]]]]],[[24,[[0,[6,37,8,40,45,69,81,82,46,78,48,11]]]]]],[23,24],[[[18,[83]]],24],[[[4,[83]]],24],[23,25],[[[20,[83]]],25],[21,25],[[[26,[83]]],25],[[[70,[71]]],25],[[[16,[71]]],25],[[[73,[72]]],25],[[[75,[[74,[25]]]]],25],[[[17,[83]]],25],[[[27,[83]]],25],[[[2,[71]]],25],[[[19,[83]]],25],[[[24,[[0,[50,11]]]]],[[25,[[0,[50,11]]]]]],[22,25],[[[18,[83]]],25],[25,25],[[[5,[71]]],25],[[[4,[83]]],25],[23,26],[[[16,[71]]],[[26,[41]]]],[[[17,[[41,[[0,[36,80,46,40,38,11]]]],[0,[36,80,46,40,38,11]]]]],[[26,[[41,[[0,[36,80,46,40,38,11]]]],[0,[36,80,46,40,38,11]]]]]],[[[4,[41]]],[[26,[41]]]],[[[2,[71]]],[[26,[41]]]],[[[18,[41]]],[[26,[41]]]],[[[19,[41]]],[[26,[41]]]],[21,26],[[[27,[[0,[8,37,68,40,11]]]]],[[26,[[0,[8,37,68,40,11]]]]]],[[[24,[[0,[36,46,40]]]]],[[26,[83,[0,[36,46,40]]]]]],[25,26],[[[5,[71]]],[[26,[41]]]],[[[73,[72]]],[[26,[41]]]],[26,26],[[[20,[[41,[[0,[36,8,80,46,40,81,11,82]]]],[0,[36,8,80,46,40,81,11,82]]]]],[[26,[[41,[[0,[36,8,80,46,40,81,11,82]]]],[0,[36,8,80,46,40,81,11,82]]]]]],[22,26],[[[70,[71,[0,[40,85]]]]],[[26,[41,[0,[40,85]]]]]],[[[75,[[74,[26]]]]],26],[[[17,[41]]],[[27,[41]]]],[21,[[27,[41]]]],[[[20,[41]]],[[27,[41]]]],[[[19,[41]]],[[27,[41]]]],[[[16,[71]]],[[27,[41]]]],[[[4,[41]]],[[27,[41]]]],[[[2,[71]]],[[27,[41]]]],[24,[[27,[41]]]],[23,[[27,[41]]]],[22,[[27,[41]]]],[27,27],[[[70,[71]]],[[27,[41]]]],[[[26,[[0,[8,68,40,11]]]]],[[27,[[0,[8,68,40,11]]]]]],[25,[[27,[41]]]],[[[75,[[74,[27]]]]],27],[[[73,[72]]],27],[[[18,[41]]],[[27,[41]]]],[[[5,[71]]],[[27,[41]]]],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[55,[[2,[43]]]],[55,[[4,[43]]]],[55,[[5,[43]]]],[55,[[16,[43]]]],[55,[[17,[43]]]],[55,[[18,[43]]]],[55,[[19,[43]]]],[55,[[20,[43]]]],[55,[[21,[43]]]],[55,[[22,[43]]]],[55,[[23,[43]]]],[55,[[24,[43]]]],[55,[[25,[43]]]],[55,[[26,[43]]]],[55,[[27,[43]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]],[17,[[0,[36,6,37,8,46,47,48,49,45,40,38,11]]]]]],[[[18,[[0,[36,6,37,8,48,49,45,46,47,40,38,11]]]],[18,[[0,[36,6,37,8,48,49,45,46,47,40,38,11]]]]]],[[]],[[[2,[71,[0,[36,40,38]]]],[2,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[4,[[0,[36,40,38]]]],[4,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[5,[71,[0,[36,40,38]]]],[5,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[16,[71,[0,[36,40,38]]]],[16,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[17,[[0,[36,40,38]]]],[17,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[18,[[0,[36,40,38]]]],[18,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[19,[[0,[36,40,38]]]],[19,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[20,[[41,[[0,[36,40,38]]]],[0,[36,40,38]]]],[20,[[41,[[0,[36,40,38]]]],[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[21,[[0,[36,40,38]]]],[21,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[23,[[0,[36,40,38]]]],[23,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[24,[[0,[36,40,38]]]],[24,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[25,[[0,[36,40,38]]]],[25,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[26,[[0,[36,40,38]]]],[26,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[27,[[0,[36,40,38]]]],[27,[[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[]],[[[2,[11]]],[[14,[11]]]],[[[4,[11]]],[[13,[11]]]],[[[5,[11]]],[[14,[11]]]],[[[16,[11]]],[[14,[11]]]],[[[17,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[12,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[18,[11]]],[[12,[11]]]],[[[19,[11]]],[[13,[11]]]],[[[20,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[13,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[21,[11]]],[[15,[11]]]],[[[22,[11]]],[[15,[11]]]],[[[23,[11]]],[[15,[11]]]],[[[24,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]],[[15,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,[29,[[0,[6,48,29,87,11]]]],87,11]]]],87,11]]]],87,11]]]]]],[[[25,[11]]],[[15,[11]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[17,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[17,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[20,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[20,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[24,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]],[24,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[29,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],[51,[[0,[36,49,45,[10,[[0,[36,49,45,10,29,51,11]]]],[29,[[0,[36,49,45,10,29,51,11]]]],[51,[[0,[36,49,45,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[17,[[0,[36,[51,[[0,[36,[51,[[0,[36,[51,[[0,[36,51,79,45]]]],79,45]]]],79,45]]]],79,45]]]],[17,[[0,[36,[51,[[0,[36,[51,[[0,[36,[51,[[0,[36,51,79,45]]]],79,45]]]],79,45]]]],79,45]]]]]],[[18,18]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[],67],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[],86],[[[2,[55]]]],[2],[2],[4],[4],[[[4,[55]]]],[5],[[[5,[55]]]],[5],[[[12,[55]]]],[12],[12],[[[13,[55]]]],[13],[13],[[[14,[55]]]],[14],[14],[15],[[[15,[55]]]],[15],[16],[16],[[[16,[55]]]],[[[17,[55]]]],[17],[17],[18],[18],[[[18,[55]]]],[[[19,[55]]]],[19],[19],[[[20,[55]]]],[20],[20],[21],[21],[[[21,[55]]]],[22],[22],[[[22,[55]]]],[23],[23],[[[23,[55]]]],[24],[[[24,[55]]]],[24],[25],[25],[[[25,[55]]]],[26],[26],[[[26,[55]]]],[27],[[[27,[55]]]],[27],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[2,[[0,[38,35]]]]]],[[[4,[[0,[38,36,8]]]]]],[[[5,[[0,[38,35]]]]]],[[[16,[[0,[38,29,11,35]]]]]],[[[17,[[0,[38,36,8]]]]]],[[[18,[[0,[38,36,8]]]]]],[[[19,[[0,[38,36,8]]]]]],[[[20,[[0,[38,36,8]]]]]],[[[21,[[0,[38,35]]]]]],[[[22,[[0,[38,36,40,35]]]]]],[[[23,[[0,[38,29,11,35]]]]]],[[[24,[[0,[38,8,37]]]]]],[[[25,[[0,[38,8,37]]]]]],[[[26,[[41,[[0,[38,8]]]],[0,[38,8]]]]]],[[[27,[[0,[38,8,37]]]]]],0,0,0,0,0,0,0,0,0,0,[[]],[[[2,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[2,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[4,[[0,[36,8,69,34,40,38,11]]]]]],[[[5,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[5,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[16,[[0,[36,8,69,40,38,11,35]]]],[0,[36,8,69,40,38,11,35]]],[[16,[[0,[36,8,69,40,38,11,35]]]]]],[[[17,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[17,[[0,[36,8,69,34,40,38,11]]]]]],[[[18,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[18,[[0,[36,8,69,34,40,38,11]]]]]],[[[19,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[19,[[0,[36,8,69,34,40,38,11]]]]]],[[[20,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[20,[[0,[36,8,69,34,40,38,11]]]]]],[[[21,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[21,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,69,34,40,38,11,36,35]]]],[0,[36,8,69,34,40,38,11,36,35]]],[[22,[[0,[36,8,69,34,40,38,11,36,35]]]]]],[[[23,[[0,[36,8,69,40,38,11,35]]]],[0,[36,8,69,40,38,11,35]]],[[23,[[0,[36,8,69,40,38,11,35]]]]]],[[[24,[[0,[36,8,69,34,40,38,11,37]]]],[0,[36,8,69,34,40,38,11,37]]],[[24,[[0,[36,8,69,34,40,38,11,37]]]]]],[[[25,[[0,[36,8,69,34,40,38,11,8,37]]]],[0,[36,8,69,34,40,38,11,8,37]]],[[25,[[0,[36,8,69,34,40,38,11,8,37]]]]]],[[[26,[[41,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[26,[[41,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]]]]],[[[27,[[0,[36,8,69,34,40,38,11,37]]]],[0,[36,8,69,34,40,38,11,37]]],[[27,[[0,[36,8,69,34,40,38,11,37]]]]]],[[]],[[[2,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[5,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[16,[[0,[36,8,69,42,30,88,40,38,11,35]]]],[0,[36,8,69,42,30,88,40,38,11,35]]]],[[[17,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[18,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[19,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[20,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[21,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,69,42,30,40,38,11,36,35]]]],[0,[36,8,69,42,30,40,38,11,36,35]]]],[[[23,[[0,[36,8,69,42,30,88,40,38,11,35]]]],[0,[36,8,69,42,30,88,40,38,11,35]]]],[[[24,[[0,[36,8,69,42,30,40,38,11,37]]]],[0,[36,8,69,42,30,40,38,11,37]]]],[[[25,[[0,[36,8,69,42,30,40,38,11,8,37]]]],[0,[36,8,69,42,30,40,38,11,8,37]]]],[[[26,[[41,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[27,[[0,[36,8,69,42,30,40,38,11,37]]]],[0,[36,8,69,42,30,40,38,11,37]]]],[[]],[[[2,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[2,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[4,[[0,[36,8,69,34,40,38,11]]]]]],[[[5,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[5,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[16,[[0,[36,8,69,40,38,11,35]]]],[0,[36,8,69,40,38,11,35]]],[[16,[[0,[36,8,69,40,38,11,35]]]]]],[[[17,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[17,[[0,[36,8,69,34,40,38,11]]]]]],[[[18,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[18,[[0,[36,8,69,34,40,38,11]]]]]],[[[19,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[19,[[0,[36,8,69,34,40,38,11]]]]]],[[[20,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[20,[[0,[36,8,69,34,40,38,11]]]]]],[[[21,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[21,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,69,34,40,38,11,36,35]]]],[0,[36,8,69,34,40,38,11,36,35]]],[[22,[[0,[36,8,69,34,40,38,11,36,35]]]]]],[[[23,[[0,[36,8,69,40,38,11,35]]]],[0,[36,8,69,40,38,11,35]]],[[23,[[0,[36,8,69,40,38,11,35]]]]]],[[[24,[[0,[36,8,69,34,40,38,11,37]]]],[0,[36,8,69,34,40,38,11,37]]],[[24,[[0,[36,8,69,34,40,38,11,37]]]]]],[[[25,[[0,[36,8,69,34,40,38,11,8,37]]]],[0,[36,8,69,34,40,38,11,8,37]]],[[25,[[0,[36,8,69,34,40,38,11,8,37]]]]]],[[[26,[[41,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[26,[[41,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]]]]],[[[27,[[0,[36,8,69,34,40,38,11,37]]]],[0,[36,8,69,34,40,38,11,37]]],[[27,[[0,[36,8,69,34,40,38,11,37]]]]]],[[]],[[[2,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[5,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[16,[[0,[36,8,69,42,30,88,40,38,11,35]]]],[0,[36,8,69,42,30,88,40,38,11,35]]]],[[[17,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[18,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[19,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[20,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[21,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,69,42,30,40,38,11,36,35]]]],[0,[36,8,69,42,30,40,38,11,36,35]]]],[[[23,[[0,[36,8,69,42,30,88,40,38,11,35]]]],[0,[36,8,69,42,30,88,40,38,11,35]]]],[[[24,[[0,[36,8,69,42,30,40,38,11,37]]]],[0,[36,8,69,42,30,40,38,11,37]]]],[[[25,[[0,[36,8,69,42,30,40,38,11,8,37]]]],[0,[36,8,69,42,30,40,38,11,8,37]]]],[[[26,[[41,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[27,[[0,[36,8,69,42,30,40,38,11,37]]]],[0,[36,8,69,42,30,40,38,11,37]]]],0,0,0,0,0,[[]],[[[2,[[0,[6,7,8,37,34,40,11]]]],[2,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[2,[[0,[6,7,8,37,34,40,11]]]]]],[[[4,[[0,[6,7,8,37,34,40,11]]]],[4,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[4,[[0,[6,7,8,37,34,40,11]]]]]],[[[5,[[0,[6,7,8,37,34,40,11]]]],[5,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[5,[[0,[6,7,8,37,34,40,11]]]]]],[[[16,[[0,[6,7,8,37,34,40,11]]]],[16,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[16,[[0,[6,7,8,37,34,40,11]]]]]],[[[17,[[0,[36,8,37,40,34,11]]]],[17,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[17,[[0,[36,8,37,40,34,11]]]]]],[[[18,[[0,[6,7,8,37,34,40,11]]]],[18,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[18,[[0,[6,7,8,37,34,40,11]]]]]],[[[19,[[0,[6,7,8,37,34,40,11]]]],[19,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[19,[[0,[6,7,8,37,34,40,11]]]]]],[[[20,[[0,[36,8,37,40,34,11]]]],[20,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[20,[[0,[36,8,37,40,34,11]]]]]],[[[21,[[0,[6,7,8,37,34,40,11]]]],[21,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[21,[[0,[6,7,8,37,34,40,11]]]]]],[[[22,[[0,[6,7,8,37,34,40,11]]]],[22,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[22,[[0,[6,7,8,37,34,40,11]]]]]],[[[23,[[0,[6,7,8,37,34,40,11]]]],[23,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[23,[[0,[6,7,8,37,34,40,11]]]]]],[[[24,[[0,[36,8,37,40,34,11]]]],[24,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[24,[[0,[36,8,37,40,34,11]]]]]],[[[25,[[0,[6,7,8,37,34,40,11]]]],[25,[[0,[6,7,8,37,34,40,11]]]],[0,[6,7,8,37,34,40,11]]],[[25,[[0,[6,7,8,37,34,40,11]]]]]],[[[26,[[0,[36,8,37,40,34,11]]]],[26,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[26,[[0,[36,8,37,40,34,11]]]]]],[[[27,[[0,[36,8,37,40,34,11]]]],[27,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[27,[[0,[36,8,37,40,34,11]]]]]],[[]],[[[2,[[0,[6,7,8,37,34,30,40,11]]]],[2,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[4,[[0,[6,7,8,37,34,30,40,11]]]],[4,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[5,[[0,[6,7,8,37,34,30,40,11]]]],[5,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[16,[[0,[6,7,8,37,34,30,40,11]]]],[16,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[17,[[0,[36,8,37,30,40,34,11]]]],[17,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[18,[[0,[6,7,8,37,34,30,40,11]]]],[18,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[19,[[0,[6,7,8,37,34,30,40,11]]]],[19,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[20,[[0,[36,8,37,30,40,34,11]]]],[20,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[21,[[0,[6,7,8,37,34,30,40,11]]]],[21,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[22,[[0,[6,7,8,37,34,30,40,11]]]],[22,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[23,[[0,[6,7,8,37,34,30,40,11]]]],[23,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[24,[[0,[36,8,37,30,40,34,11]]]],[24,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[25,[[0,[6,7,8,37,34,30,40,11]]]],[25,[[0,[6,7,8,37,34,30,40,11]]]],[0,[6,7,8,37,34,30,40,11]]]],[[[26,[[0,[36,8,37,30,40,34,11]]]],[26,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[27,[[0,[36,8,37,30,40,34,11]]]],[27,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[17,[51]],[17,[51]]]],[[[17,[[0,[51,11]]]],[0,[51,11]]]],[[[20,[51]],[20,[51]]]],[[[20,[[0,[51,11]]]],[0,[51,11]]]],[[[24,[51]],[24,[51]]]],[[[24,[[0,[51,11]]]],[0,[51,11]]]],[[[26,[[0,[51,11]]]],[0,[51,11]]]],[[[26,[51]],[26,[51]]]],[[[27,[51]],[27,[51]]]],[[[27,[[0,[51,11]]]],[0,[51,11]]]],[[[17,[89]],[17,[89]]]],[[[17,[[0,[89,11]]]],[0,[89,11]]]],[[[20,[[0,[89,11]]]],[0,[89,11]]]],[[[20,[89]],[20,[89]]]],[[[24,[[0,[89,11]]]],[0,[89,11]]]],[[[24,[89]],[24,[89]]]],[[[26,[[0,[89,11]]]],[0,[89,11]]]],[[[26,[89]],[26,[89]]]],[[[27,[89]],[27,[89]]]],[[[27,[[0,[89,11]]]],[0,[89,11]]]],0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[17,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[17,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[20,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[20,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[24,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[24,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[26,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[26,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[27,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[27,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[2,[90]],[2,[90]]],3],[[[4,[90]],[4,[90]]],3],[[[5,[90]],[5,[90]]],3],[[[12,[[0,[6,7,8,9,10,11,90]]]],[12,[[0,[6,7,8,9,10,11,90]]]]],3],[[[13,[[0,[6,7,8,9,10,11,90]]]],[13,[[0,[6,7,8,9,10,11,90]]]]],3],[[[14,[[0,[6,7,8,9,10,11,90]]]],[14,[[0,[6,7,8,9,10,11,90]]]]],3],[[[15,[[0,[6,7,8,9,10,11,90]]]],[15,[[0,[6,7,8,9,10,11,90]]]]],3],[[[16,[90]],[16,[90]]],3],[[[17,[90]],[17,[90]]],3],[[[18,[90]],[18,[90]]],3],[[[19,[90]],[19,[90]]],3],[[[20,[90]],[20,[90]]],3],[[[21,[90]],[21,[90]]],3],[[[22,[90]],[22,[90]]],3],[[[23,[90]],[23,[90]]],3],[[[24,[90]],[24,[90]]],3],[[[25,[90]],[25,[90]]],3],[[[26,[90]],[26,[90]]],3],[[[27,[90]],[27,[90]]],3],[[[2,[90]],[2,[90]]],3],[[[4,[90]],[4,[90]]],3],[[[5,[90]],[5,[90]]],3],[[[12,[[0,[6,7,8,9,10,11,90]]]],[12,[[0,[6,7,8,9,10,11,90]]]]],3],[[[13,[[0,[6,7,8,9,10,11,90]]]],[13,[[0,[6,7,8,9,10,11,90]]]]],3],[[[14,[[0,[6,7,8,9,10,11,90]]]],[14,[[0,[6,7,8,9,10,11,90]]]]],3],[[[15,[[0,[6,7,8,9,10,11,90]]]],[15,[[0,[6,7,8,9,10,11,90]]]]],3],[[[16,[90]],[16,[90]]],3],[[[17,[90]],[17,[90]]],3],[[[18,[90]],[18,[90]]],3],[[[19,[90]],[19,[90]]],3],[[[20,[90]],[20,[90]]],3],[[[21,[90]],[21,[90]]],3],[[[22,[90]],[22,[90]]],3],[[[23,[90]],[23,[90]]],3],[[[24,[90]],[24,[90]]],3],[[[25,[90]],[25,[90]]],3],[[[26,[90]],[26,[90]]],3],[[[27,[90]],[27,[90]]],3],0,[[]],[[[2,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[2,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[4,[[0,[36,8,69,34,40,38,11]]]]]],[[[5,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[5,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[18,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[18,[[0,[36,8,69,34,40,38,11]]]]]],[[[19,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[19,[[0,[36,8,69,34,40,38,11]]]]]],[[[21,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[21,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,69,34,40,38,11,36,35]]]],[0,[36,8,69,34,40,38,11,36,35]]],[[22,[[0,[36,8,69,34,40,38,11,36,35]]]]]],[[]],[[[2,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[5,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[18,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[19,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[21,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,69,42,30,40,38,11,36,35]]]],[0,[36,8,69,42,30,40,38,11,36,35]]]],[[]],[[[2,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[2,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[4,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[4,[[0,[36,8,69,34,40,38,11]]]]]],[[[5,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[5,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[18,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[18,[[0,[36,8,69,34,40,38,11]]]]]],[[[19,[[0,[36,8,69,34,40,38,11]]]],[0,[36,8,69,34,40,38,11]]],[[19,[[0,[36,8,69,34,40,38,11]]]]]],[[[21,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[21,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[22,[[0,[36,8,69,34,40,38,11,36,35]]]],[0,[36,8,69,34,40,38,11,36,35]]],[[22,[[0,[36,8,69,34,40,38,11,36,35]]]]]],[[]],[[[2,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[4,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[5,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[18,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[19,[[0,[36,8,69,42,30,40,38,11]]]],[0,[36,8,69,42,30,40,38,11]]]],[[[21,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[22,[[0,[36,8,69,42,30,40,38,11,36,35]]]],[0,[36,8,69,42,30,40,38,11,36,35]]]],[[[2,[[0,[91,11]]]],[0,[91,11]]]],[[[2,[91]],[2,[91]]]],[[[4,[91]],[4,[91]]]],[[[4,[[0,[91,11]]]],[0,[91,11]]]],[[[5,[[0,[91,11]]]],[0,[91,11]]]],[[[5,[91]],[5,[91]]]],[[[12,[91]],[12,[91]]],[[12,[91]]]],[[[12,[91]],91],[[12,[91]]]],[[[13,[91]],[13,[91]]],[[13,[91]]]],[[[13,[91]],91],[[13,[91]]]],[[[14,[91]],[14,[91]]],[[14,[91]]]],[[[14,[91]],91],[[14,[91]]]],[[[15,[91]],[15,[91]]],[[15,[91]]]],[[[15,[91]],91],[[15,[91]]]],[[[16,[[0,[91,11]]]],[0,[91,11]]]],[[[16,[91]],[16,[91]]]],[[[17,[[0,[91,11]]]],[0,[91,11]]]],[[[17,[91]],[17,[91]]]],[[[18,[[0,[91,11]]]],[0,[91,11]]]],[[[18,[91]],[18,[91]]]],[[[19,[[0,[91,11]]]],[0,[91,11]]]],[[[19,[91]],[19,[91]]]],[[[20,[91]],[20,[91]]]],[[[20,[[0,[91,11]]]],[0,[91,11]]]],[[[21,[91]],[21,[91]]]],[[[21,[[0,[91,11]]]],[0,[91,11]]]],[[[22,[91]],[22,[91]]]],[[[22,[[0,[91,11]]]],[0,[91,11]]]],[[[23,[[0,[91,11]]]],[0,[91,11]]]],[[[23,[91]],[23,[91]]]],[[[24,[91]],[24,[91]]]],[[[24,[[0,[91,11]]]],[0,[91,11]]]],[[[25,[[0,[91,11]]]],[0,[91,11]]]],[[[25,[91]],[25,[91]]]],[[[26,[91]],[26,[91]]]],[[[26,[[0,[91,11]]]],[0,[91,11]]]],[[[27,[91]],[27,[91]]]],[[[27,[[0,[91,11]]]],[0,[91,11]]]],[[[2,[92]],[2,[92]]]],[[[2,[[0,[92,11]]]],[0,[92,11]]]],[[[4,[92]],[4,[92]]]],[[[4,[[0,[92,11]]]],[0,[92,11]]]],[[[5,[[0,[92,11]]]],[0,[92,11]]]],[[[5,[92]],[5,[92]]]],[[[12,[92]],[12,[92]]],[[12,[92]]]],[[[12,[92]],92],[[12,[92]]]],[[[13,[92]],[13,[92]]],[[13,[92]]]],[[[13,[92]],92],[[13,[92]]]],[[[14,[92]],92],[[14,[92]]]],[[[14,[92]],[14,[92]]],[[14,[92]]]],[[[15,[92]],92],[[15,[92]]]],[[[15,[92]],[15,[92]]],[[15,[92]]]],[[[16,[92]],[16,[92]]]],[[[16,[[0,[92,11]]]],[0,[92,11]]]],[[[17,[92]],[17,[92]]]],[[[17,[[0,[92,11]]]],[0,[92,11]]]],[[[18,[[0,[92,11]]]],[0,[92,11]]]],[[[18,[92]],[18,[92]]]],[[[19,[92]],[19,[92]]]],[[[19,[[0,[92,11]]]],[0,[92,11]]]],[[[20,[92]],[20,[92]]]],[[[20,[[0,[92,11]]]],[0,[92,11]]]],[[[21,[92]],[21,[92]]]],[[[21,[[0,[92,11]]]],[0,[92,11]]]],[[[22,[92]],[22,[92]]]],[[[22,[[0,[92,11]]]],[0,[92,11]]]],[[[23,[92]],[23,[92]]]],[[[23,[[0,[92,11]]]],[0,[92,11]]]],[[[24,[92]],[24,[92]]]],[[[24,[[0,[92,11]]]],[0,[92,11]]]],[[[25,[[0,[92,11]]]],[0,[92,11]]]],[[[25,[92]],[25,[92]]]],[[[26,[92]],[26,[92]]]],[[[26,[[0,[92,11]]]],[0,[92,11]]]],[[[27,[[0,[92,11]]]],[0,[92,11]]]],[[[27,[92]],[27,[92]]]],0,0,0,0,0,[[]],[[2,[77,[14]]]],[[4,[77,[13]]]],[[5,[77,[14]]]],[[16,[77,[14]]]],[[18,[77,[12]]]],[[19,[77,[13]]]],[[21,[77,[15]]]],[[22,[77,[15]]]],[[23,[77,[15]]]],[[25,[77,[15]]]],[[]],[[[2,[29]]],[[2,[29]]]],[[[4,[29]]],[[4,[29]]]],[[[5,[29]]],[[5,[29]]]],[[[16,[29]]],[[16,[29]]]],[[[18,[29]]],[[18,[29]]]],[[[19,[29]]],[[19,[29]]]],[[[21,[29]]],[[21,[29]]]],[[[22,[29]]],[[22,[29]]]],[[[23,[29]]],[[23,[29]]]],[[[25,[29]]],[[25,[29]]]],[[]],[[[2,[30]]]],[[[4,[30]]]],[[[5,[30]]]],[[[16,[30]]]],[[[18,[30]]]],[[[19,[30]]]],[[[21,[30]]]],[[[22,[30]]]],[[[23,[30]]]],[[[25,[30]]]],[[]],[2],[4],[5],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],0,0,0,0,[[[2,[10]],[2,[10]]]],[[[2,[[0,[10,11]]]],[0,[10,11]]]],[[[4,[10]],[4,[10]]]],[[[4,[[0,[10,11]]]],[0,[10,11]]]],[[[5,[10]],[5,[10]]]],[[[5,[[0,[10,11]]]],[0,[10,11]]]],[[[12,[10]],[12,[10]]],[[12,[10]]]],[[[12,[10]],10],[[12,[10]]]],[[[13,[10]],[13,[10]]],[[13,[10]]]],[[[13,[10]],10],[[13,[10]]]],[[[14,[10]],[14,[10]]],[[14,[10]]]],[[[14,[10]],10],[[14,[10]]]],[[[15,[10]],10],[[15,[10]]]],[[[15,[10]],[15,[10]]],[[15,[10]]]],[[[16,[10]],[16,[10]]]],[[[16,[[0,[10,11]]]],[0,[10,11]]]],[[[17,[[0,[10,11]]]],[0,[10,11]]]],[[[17,[10]],[17,[10]]]],[[[18,[[0,[10,11]]]],[0,[10,11]]]],[[[18,[10]],[18,[10]]]],[[[19,[10]],[19,[10]]]],[[[19,[[0,[10,11]]]],[0,[10,11]]]],[[[20,[[0,[10,11]]]],[0,[10,11]]]],[[[20,[10]],[20,[10]]]],[[[21,[[0,[10,11]]]],[0,[10,11]]]],[[[21,[10]],[21,[10]]]],[[[22,[10]],[22,[10]]]],[[[22,[[0,[10,11]]]],[0,[10,11]]]],[[[23,[[0,[10,11]]]],[0,[10,11]]]],[[[23,[10]],[23,[10]]]],[[[24,[[0,[10,11]]]],[0,[10,11]]]],[[[24,[10]],[24,[10]]]],[[[25,[[0,[10,11]]]],[0,[10,11]]]],[[[25,[10]],[25,[10]]]],[[[26,[[0,[10,11]]]],[0,[10,11]]]],[[[26,[10]],[26,[10]]]],[[[27,[10]],[27,[10]]]],[[[27,[[0,[10,11]]]],[0,[10,11]]]],[[[2,[88]],[2,[88]]]],[[[2,[[0,[88,11]]]],[0,[88,11]]]],[[[4,[88]],[4,[88]]]],[[[4,[[0,[88,11]]]],[0,[88,11]]]],[[[5,[[0,[88,11]]]],[0,[88,11]]]],[[[5,[88]],[5,[88]]]],[[[12,[88]],88]],[[[12,[88]],[12,[88]]]],[[[13,[88]],88]],[[[13,[88]],[13,[88]]]],[[[14,[88]],88]],[[[14,[88]],[14,[88]]]],[[[15,[88]],88]],[[[15,[88]],[15,[88]]]],[[[16,[88]],[16,[88]]]],[[[16,[[0,[88,11]]]],[0,[88,11]]]],[[[17,[88]],[17,[88]]]],[[[17,[[0,[88,11]]]],[0,[88,11]]]],[[[18,[[0,[88,11]]]],[0,[88,11]]]],[[[18,[88]],[18,[88]]]],[[[19,[88]],[19,[88]]]],[[[19,[[0,[88,11]]]],[0,[88,11]]]],[[[20,[[0,[88,11]]]],[0,[88,11]]]],[[[20,[88]],[20,[88]]]],[[[21,[88]],[21,[88]]]],[[[21,[[0,[88,11]]]],[0,[88,11]]]],[[[22,[[0,[88,11]]]],[0,[88,11]]]],[[[22,[88]],[22,[88]]]],[[[23,[[0,[88,11]]]],[0,[88,11]]]],[[[23,[88]],[23,[88]]]],[[[24,[[0,[88,11]]]],[0,[88,11]]]],[[[24,[88]],[24,[88]]]],[[[25,[88]],[25,[88]]]],[[[25,[[0,[88,11]]]],[0,[88,11]]]],[[[26,[[0,[88,11]]]],[0,[88,11]]]],[[[26,[88]],[26,[88]]]],[[[27,[[0,[88,11]]]],[0,[88,11]]]],[[[27,[88]],[27,[88]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[31,[[93,[2]]]],[31,[[93,[2]]]],[[],93],[31,[[93,[4]]]],[[],93],[31,[[93,[4]]]],[31,[[93,[5]]]],[31,[[93,[5]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[31,[[93,[16]]]],[[],93],[31,[[93,[16]]]],[31,[[93,[17]]]],[31,[[93,[17]]]],[[],93],[31,[[93,[18]]]],[[],93],[31,[[93,[18]]]],[31,[[93,[19]]]],[[],93],[31,[[93,[19]]]],[[],93],[31,[[93,[20]]]],[31,[[93,[20]]]],[31,[[93,[21]]]],[31,[[93,[21]]]],[[],93],[31,[[93,[22]]]],[31,[[93,[22]]]],[[],93],[31,[[93,[23]]]],[31,[[93,[23]]]],[[],93],[[],93],[31,[[93,[24]]]],[31,[[93,[24]]]],[31,[[93,[25]]]],[31,[[93,[25]]]],[[],93],[31,[[93,[26]]]],[31,[[93,[26]]]],[[],93],[31,[[93,[27]]]],[[],93],[31,[[93,[27]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[2,[96]],[2,[96]],44],3],[[[4,[96]],[4,[96]],44],3],[[[5,[96]],[5,[96]],44],3],[[[12,[[0,[6,7,8,9,10,11,96]]]],[12,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[13,[[0,[6,7,8,9,10,11,96]]]],[13,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[14,[[0,[6,7,8,9,10,11,96]]]],[14,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[15,[[0,[6,7,8,9,10,11,96]]]],[15,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[16,[96]],[16,[96]],44],3],[[[17,[96]],[17,[96]],44],3],[[[18,[96]],[18,[96]],44],3],[[[19,[96]],[19,[96]],44],3],[[[20,[96]],[20,[96]],44],3],[[[21,[96]],[21,[96]],44],3],[[[22,[96]],[22,[96]],44],3],[[[23,[96]],[23,[96]],44],3],[[[24,[96]],[24,[96]],44],3],[[[25,[96]],[25,[96]],44],3],[[[26,[96]],[26,[96]],44],3],[[[27,[96]],[27,[96]],44],3],[[[2,[96]],[2,[96]],44],3],[[[4,[96]],[4,[96]],44],3],[[[5,[96]],[5,[96]],44],3],[[[12,[[0,[6,7,8,9,10,11,96]]]],[12,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[13,[[0,[6,7,8,9,10,11,96]]]],[13,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[14,[[0,[6,7,8,9,10,11,96]]]],[14,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[15,[[0,[6,7,8,9,10,11,96]]]],[15,[[0,[6,7,8,9,10,11,96]]]],44],3],[[[16,[96]],[16,[96]],44],3],[[[17,[96]],[17,[96]],44],3],[[[18,[96]],[18,[96]],44],3],[[[19,[96]],[19,[96]],44],3],[[[20,[96]],[20,[96]],44],3],[[[21,[96]],[21,[96]],44],3],[[[22,[96]],[22,[96]],44],3],[[[23,[96]],[23,[96]],44],3],[[[24,[96]],[24,[96]],44],3],[[[25,[96]],[25,[96]],44],3],[[[26,[96]],[26,[96]],44],3],[[[27,[96]],[27,[96]],44],3],[[[66,[[17,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[20,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[24,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[26,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[66,[[27,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[2,35]],[[4,35]],[[5,35]],[[16,35]],[[17,35]],[[18,35]],[[19,35]],[[20,35]],[[21,35]],[[22,35]],[[23,35]],[[24,35]],[[25,35]],[[26,35]],[[27,35]],[[]],[[2,[77,[14]]],2],[[4,[77,[13]]],4],[[5,[77,[14]]],5],[[16,[77,[14]]],16],[[18,[77,[12]]],18],[[19,[77,[13]]],19],[[21,[77,[15]]],21],[[22,[77,[15]]],22],[[23,[77,[15]]],23],[[25,[77,[15]]],25],[[]],[2],[4],[5],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],0,0,[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,[[[75,[1,1]],[75,[1,1]]],3],[28],[28],[28],[[[75,[[29,[[0,[29,11]]]],[0,[29,11]]]],[0,[29,11]]]],[[[75,[29,29]],[75,[29,29]]]],[[[75,[[30,[[0,[30,11]]]],[0,[30,11]]]],[0,[30,11]]]],[[[75,[30,30]],[75,[30,30]]]],0,[[]],[[]],[[]],[[]],[75,31],[75,32],[75,32],[75,31],[[[75,[20]]],[[75,[20]]]],[[[75,[21]]],[[75,[21]]]],[[[75,[4]]],[[75,[4]]]],[[[75,[22]]],[[75,[22]]]],[[[75,[25]]],[[75,[25]]]],[[[75,[70]]],[[75,[70]]]],[[[75,[17]]],[[75,[17]]]],[[[75,[24]]],[[75,[24]]]],[[[75,[16]]],[[75,[16]]]],[[[75,[5]]],[[75,[5]]]],[[[75,[27]]],[[75,[27]]]],[[[75,[19]]],[[75,[19]]]],[[[75,[18]]],[[75,[18]]]],[[[75,[73]]],[[75,[73]]]],[[[75,[23]]],[[75,[23]]]],[[[75,[26]]],[[75,[26]]]],[[[75,[2]]],[[75,[2]]]],[[[75,[97]],[75,[97]]],[[75,[97]]]],[[[75,[97]],[75,[97]],33],[[75,[97]]]],[[]],[[]],[[]],[[]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[100,[0,[35,34]]]]],[[75,[100,[0,[35,34]]]]]],[[[75,[101,[0,[35,42]]]]]],[[[75,[[16,[102]],102]]]],[[[75,[[2,[102]],102]]]],[[[75,[[18,[102]],102]]]],[[[75,[[20,[102]],102]]]],[[[75,[[25,[102]],102]]]],[[[75,[[26,[102]],102]]]],[[[75,[[24,[102]],102]]]],[[[75,[[19,[102]],102]]]],[[[75,[[27,[102]],102]]]],[[[75,[[23,[102]],102]]]],[[[75,[[70,[102]],102]]]],[[[75,[[4,[102]],102]]]],[[[75,[[22,[102]],102]]]],[[[75,[[21,[102]],102]]]],[[[75,[[5,[102]],102]]]],[[[75,[[73,[102]],102]]]],[[[75,[[17,[102]],102]]]],[[[75,[11,11]]],[[75,[11,11]]]],[[]],[[[75,[[18,[11]],11]]],[[75,[[18,[11]],11]]]],[[[75,[[4,[11]],11]]],[[75,[[4,[11]],11]]]],[[[75,[[17,[11]],11]]],[[75,[[17,[11]],11]]]],[[[75,[[21,[11]],11]]],[[75,[[21,[11]],11]]]],[[[75,[[16,[11]],11]]],[[75,[[16,[11]],11]]]],[[[75,[[5,[11]],11]]],[[75,[[5,[11]],11]]]],[[[75,[[20,[11]],11]]],[[75,[[20,[11]],11]]]],[[[75,[[73,[11]],11]]],[[75,[[73,[11]],11]]]],[[[75,[[25,[11]],11]]],[[75,[[25,[11]],11]]]],[[[75,[[73,[11]],11]]],[[75,[[73,[11]],11]]]],[[[75,[[27,[11]],11]]],[[75,[[27,[11]],11]]]],[[[75,[[24,[11]],11]]],[[75,[[24,[11]],11]]]],[[[75,[[20,[11]],11]]],[[75,[[20,[11]],11]]]],[[[75,[[24,[11]],11]]],[[75,[[24,[11]],11]]]],[[[75,[[5,[11]],11]]],[[75,[[5,[11]],11]]]],[[[75,[[17,[11]],11]]],[[75,[[17,[11]],11]]]],[[[75,[[19,[11]],11]]],[[75,[[19,[11]],11]]]],[[[75,[[26,[11]],11]]],[[75,[[26,[11]],11]]]],[[[75,[[2,[11]],11]]],[[75,[[2,[11]],11]]]],[[[75,[[18,[11]],11]]],[[75,[[18,[11]],11]]]],[[[75,[[23,[11]],11]]],[[75,[[23,[11]],11]]]],[[[75,[[25,[11]],11]]],[[75,[[25,[11]],11]]]],[[[75,[[23,[11]],11]]],[[75,[[23,[11]],11]]]],[[[75,[[4,[11]],11]]],[[75,[[4,[11]],11]]]],[[[75,[[26,[11]],11]]],[[75,[[26,[11]],11]]]],[[[75,[[19,[11]],11]]],[[75,[[19,[11]],11]]]],[[[75,[[2,[11]],11]]],[[75,[[2,[11]],11]]]],[[[75,[[22,[11]],11]]],[[75,[[22,[11]],11]]]],[[[75,[[70,[11]],11]]],[[75,[[70,[11]],11]]]],[[[75,[[70,[11]],11]]],[[75,[[70,[11]],11]]]],[[[75,[[16,[11]],11]]],[[75,[[16,[11]],11]]]],[[[75,[[22,[11]],11]]],[[75,[[22,[11]],11]]]],[[[75,[[21,[11]],11]]],[[75,[[21,[11]],11]]]],[[[75,[[27,[11]],11]]],[[75,[[27,[11]],11]]]],0,[[]],[[]],[[[75,[[70,[84]],84]]],[[75,[[70,[84]],84]]]],[[[75,[[2,[84]],84]]],[[75,[[2,[84]],84]]]],[[[75,[[17,[84]],84]]],[[75,[[17,[84]],84]]]],[[[75,[[20,[84]],84]]],[[75,[[20,[84]],84]]]],[[[75,[[5,[84]],84]]],[[75,[[5,[84]],84]]]],[[[75,[[21,[84]],84]]],[[75,[[21,[84]],84]]]],[[[75,[[4,[84]],84]]],[[75,[[4,[84]],84]]]],[[[75,[[16,[84]],84]]],[[75,[[16,[84]],84]]]],[[[75,[[22,[84]],84]]],[[75,[[22,[84]],84]]]],[[[75,[[18,[84]],84]]],[[75,[[18,[84]],84]]]],[[[75,[[27,[84]],84]]],[[75,[[27,[84]],84]]]],[[[75,[[22,[84]],84]]],[[75,[[22,[84]],84]]]],[[[75,[[21,[84]],84]]],[[75,[[21,[84]],84]]]],[[[75,[[19,[84]],84]]],[[75,[[19,[84]],84]]]],[[[75,[[26,[84]],84]]],[[75,[[26,[84]],84]]]],[[[75,[[16,[84]],84]]],[[75,[[16,[84]],84]]]],[[[75,[[4,[84]],84]]],[[75,[[4,[84]],84]]]],[[[75,[[25,[84]],84]]],[[75,[[25,[84]],84]]]],[[[75,[[70,[84]],84]]],[[75,[[70,[84]],84]]]],[[[75,[[23,[84]],84]]],[[75,[[23,[84]],84]]]],[[[75,[[25,[84]],84]]],[[75,[[25,[84]],84]]]],[[[75,[[20,[84]],84]]],[[75,[[20,[84]],84]]]],[[[75,[[27,[84]],84]]],[[75,[[27,[84]],84]]]],[[[75,[[23,[84]],84]]],[[75,[[23,[84]],84]]]],[[[75,[[19,[84]],84]]],[[75,[[19,[84]],84]]]],[[[75,[[26,[84]],84]]],[[75,[[26,[84]],84]]]],[[[75,[[73,[84]],84]]],[[75,[[73,[84]],84]]]],[[[75,[[17,[84]],84]]],[[75,[[17,[84]],84]]]],[[[75,[[24,[84]],84]]],[[75,[[24,[84]],84]]]],[[[75,[[2,[84]],84]]],[[75,[[2,[84]],84]]]],[[[75,[[73,[84]],84]]],[[75,[[73,[84]],84]]]],[[[75,[[5,[84]],84]]],[[75,[[5,[84]],84]]]],[[[75,[[24,[84]],84]]],[[75,[[24,[84]],84]]]],[[[75,[[18,[84]],84]]],[[75,[[18,[84]],84]]]],[[[104,[103,103]]],105],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[],[[75,[43,35]]]],[[]],[[]],[[],44],[75],[75],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[[52,[[0,[52,11]]]],[0,[52,11]]]],[0,[52,11]]]],[[[75,[52,52]],[75,[52,52]]]],[[[75,[39,39]],[75,[39,39]]]],[[[75,[[39,[[0,[39,11]]]],[0,[39,11]]]],[0,[39,11]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[[4,[102]],102]],[0,[[106,[105]],11]]],[[104,[[108,[107]],107]]]],[[[75,[[25,[102]],102]],[0,[[106,[105]],11]]],[[104,[[109,[107]],107]]]],[[[75,[[24,[102]],102]],[0,[[106,[105]],11]]],[[104,[[110,[107]],107]]]],[[[75,[[18,[102]],102]],[0,[[106,[105]],11]]],[[104,[[111,[107]],107]]]],[[[75,[[17,[102]],102]],[0,[[106,[105]],11]]],[[104,[[112,[107]],107]]]],[[[75,[[23,[102]],102]],[0,[[106,[105]],11]]],[[104,[[113,[107]],107]]]],[[[75,[[19,[102]],102]],[0,[[106,[105]],11]]],[[104,[[114,[107]],107]]]],[[[75,[[2,[102]],102]],[0,[[106,[105]],11]]],[[104,[[115,[107]],107]]]],[[[75,[[5,[102]],102]],[0,[[106,[105]],11]]],[[104,[[116,[107]],107]]]],[[[75,[[27,[102]],102]],[0,[[106,[105]],11]]],[[104,[[117,[107]],107]]]],[[[75,[[70,[102]],102]],[0,[[106,[105]],11]]],[[104,[[118,[107]],107]]]],[[[75,[[16,[102]],102]],[0,[[106,[105]],11]]],[[104,[[119,[107]],107]]]],[[[75,[[22,[102]],102]],[0,[[106,[105]],11]]],[[104,[[120,[107]],107]]]],[[[75,[[73,[102]],102]],[0,[[106,[105]],11]]],[[104,[[121,[107]],107]]]],[[[75,[[21,[102]],102]],[0,[[106,[105]],11]]],[[104,[[122,[107]],107]]]],[[[75,[[20,[102]],102]],[0,[[106,[105]],11]]],[[104,[[123,[107]],107]]]],[[[75,[[26,[102]],102]],[0,[[106,[105]],11]]],[[104,[[124,[107]],107]]]],[[[75,[53,53]],[75,[53,53]]],3],[[],3],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[54,54]],55]],[[[75,[125,125]],57],58],[[[75,[126,126]],57],58],[[[75,[56,56]],57],58],[[]],[[],[[75,[5]]]],[[[32,[[75,[4]]]]],[[75,[[4,[64]],64]]]],[[[32,[[75,[70]]]]],[[75,[[70,[64]],64]]]],[[[32,[[75,[18]]]]],[[75,[[18,[64]],64]]]],[[[32,[[75,[16]]]]],[[75,[[16,[64]],64]]]],[[[32,[[75,[25]]]]],[[75,[[25,[64]],64]]]],[[],[[75,[24]]]],[[[32,[[75,[2]]]]],[[75,[[2,[64]],64]]]],[[[32,[[75,[20]]]]],[[75,[[20,[64]],64]]]],[[],[[75,[17]]]],[32,75],[[[32,[[75,[23]]]]],[[75,[[23,[64]],64]]]],[[[32,[[75,[73]]]]],[[75,[[73,[64]],64]]]],[[[32,[[75,[24]]]]],[[75,[[24,[64]],64]]]],[32,75],[[[66,[97]]],[[75,[97]]]],[[[32,[[75,[26]]]]],[[75,[[26,[64]],64]]]],[[],[[75,[22]]]],[[],[[75,[25]]]],[[[32,[[75,[5]]]]],[[75,[[5,[64]],64]]]],[[[32,[[75,[19]]]]],[[75,[[19,[64]],64]]]],[32,75],[[],[[75,[73]]]],[[],[[75,[26]]]],[[],[[75,[2]]]],[[],[[75,[19]]]],[[],[[75,[27]]]],[[[32,[[75,[17]]]]],[[75,[[17,[64]],64]]]],[[]],[[],[[75,[35]]]],[[],[[75,[16]]]],[[],[[75,[18]]]],[65],[[],[[75,[4]]]],[[[32,[[75,[21]]]]],[[75,[[21,[64]],64]]]],[[],[[75,[20]]]],[[[32,[[75,[22]]]]],[[75,[[22,[64]],64]]]],[[[32,[[75,[27]]]]],[[75,[[27,[64]],64]]]],[[],[[75,[70]]]],[[]],[[]],[[]],[[],67],[127,75],[[],86],[[],[[75,[27]]]],[[],[[75,[20]]]],[[],[[75,[4]]]],[[],[[75,[24]]]],[[],[[75,[73]]]],[[],[[75,[22]]]],[[],[[75,[18]]]],[[],[[75,[2]]]],[[],[[75,[19]]]],[[],[[75,[25]]]],[[],[[75,[70]]]],[[],[[75,[26]]]],[[],[[75,[21]]]],[[],[[75,[23]]]],[[],[[75,[16]]]],[[],[[75,[5]]]],[[],[[75,[17]]]],[[[75,[[73,[72]]]]],[[75,[[73,[128]],63]]]],[[[75,[[70,[71]]]]],[[75,[[70,[[128,[129]]]],63]]]],[[[75,[73]]],[[75,[[73,[63]],63]]]],[[[75,[2]]],[[75,[[2,[[0,[63,130]]]],63]]]],[[[75,[21]]],[[75,[[21,[[0,[63,130]]]],63]]]],[[[75,[5]]],[[75,[[5,[[0,[63,130]]]],63]]]],[[[75,[23]]],[[75,[[23,[[0,[63,130]]]],63]]]],[[[75,[[22,[[0,[8,69]]]]]]],[[75,[[22,[[0,[[63,[[0,[8,69]]]],[130,[[0,[8,69]]]]]]]],63]]]],[[[75,[16]]],[[75,[[16,[[0,[63,130]]]],63]]]],[[[75,[70]]],[[75,[[70,[63]],63]]]],[55,[[75,[[0,[54,131]],[0,[54,43]]]]]],[[[75,[[73,[128]]]]],[[75,[[73,[72]],63]]]],[[[75,[[70,[128]]]]],[[75,[[70,[71]],63]]]],[[]],[[]],[132,[[75,[[73,[133]],133]]]],[44,[[75,[[70,[133]],133]]]],[[[75,[[20,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[20]]]]]],[[[75,[[73,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[73]]]]]],[[[75,[[19,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[19]]]]]],[[[75,[[26,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[26]]]]]],[[[75,[[4,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[4]]]]]],[[[75,[[18,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[18]]]]]],[[[75,[[5,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[5]]]]]],[[[75,[[24,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[24]]]]]],[[[75,[[23,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[23]]]]]],[[[75,[[16,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[16]]]]]],[[[75,[[17,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[17]]]]]],[[[75,[[21,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[21]]]]]],[[[75,[[70,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[70]]]]]],[[[75,[[22,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[22]]]]]],[[[75,[[25,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[25]]]]]],[[[75,[[2,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[2]]]]]],[[[75,[[27,[[134,[31]]]],[134,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[27]]]]]],[[[75,[137]]]],[[[75,[[18,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[18]]]]]],[[[75,[[24,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[24]]]]]],[[[75,[[70,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[70]]]]]],[[[75,[[4,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[4]]]]]],[[[75,[[27,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[27]]]]]],[[[75,[[21,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[21]]]]]],[[[75,[[17,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[17]]]]]],[[[75,[[73,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[73]]]]]],[[[75,[[16,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[16]]]]]],[[[75,[[25,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[25]]]]]],[[[75,[[2,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[2]]]]]],[[[75,[[20,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[20]]]]]],[[[75,[[26,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[26]]]]]],[[[75,[[23,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[23]]]]]],[[[75,[[22,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[22]]]]]],[[[75,[[5,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[5]]]]]],[[[75,[[19,[[138,[31]]]],[138,[31]]]],[0,[[135,[31]],[135,[31]],11]]],[[136,[[75,[19]]]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[97]],[75,[97]]],[[75,[97]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[]],[[]],[[],86],[[[75,[17]]]],[[[75,[73]]]],[[[75,[26]]]],[[[75,[2]]]],[[[75,[27]]]],[[[75,[22]]]],[[[75,[21]]]],[[[75,[4]]]],[[[75,[70]]]],[[[75,[5]]]],[[[75,[20]]]],[[[75,[19]]]],[[[75,[25]]]],[[[75,[24]]]],[[[75,[18]]]],[[[75,[23]]]],[[[75,[16]]]],[[[75,[[70,[[128,[129]]]]]]],[[75,[[70,[71]],63]]]],[[[75,[[73,[128]]]]],[[75,[[73,[72]],63]]]],[[[75,[2]]],[[75,[[2,[[0,[63,130]]]],63]]]],[[[75,[16]]],[[75,[[16,[[0,[63,130]]]],63]]]],[[[75,[23]]],[[75,[[23,[[0,[63,130]]]],63]]]],[[[75,[5]]],[[75,[[5,[[0,[63,130]]]],63]]]],[[[75,[73]]],[[75,[[73,[63]],63]]]],[[[75,[70]]],[[75,[[70,[63]],63]]]],[[[75,[22]]],[[75,[[22,[[0,[63,130]]]],63]]]],[[[75,[21]]],[[75,[[21,[[0,[63,130]]]],63]]]],[[]],[[[75,[55,55]]]],[75],[75],[[[75,[[70,[71]]]]],[[75,[[70,[128]],63]]]],[[[75,[[73,[72]]]]],[[75,[[73,[128]],63]]]],[[]],[[]],[[[75,[[73,[133]],133]]],132],[[[75,[[70,[133]],133]]],44],[[[75,[139,[0,[35,38,139]]]]]],[75],[75],[[[104,[140,140]]],105],[[[75,[141]]],[[75,[141]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[142]]]],[[[75,[141]]],[[75,[141]]]],[[[75,[142]]]],[[],35],[[],35],[[[75,[143]],[75,[143]]],[[75,[143]]]],[[[75,[144]],[75,[144]]]],[[[75,[51,51]],[75,[51,51]]]],[[[75,[[51,[[0,[51,11]]]],[0,[51,11]]]],[0,[51,11]]]],[[[75,[[89,[[0,[89,11]]]],[0,[89,11]]]],[0,[89,11]]]],[[[75,[89,89]],[75,[89,89]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[77,[14]]],[[75,[16]]]],[[],[[75,[26]]]],[[],[[75,[27]]]],[[[77,[15]]],[[75,[22]]]],[[[77,[14]]],[[75,[2]]]],[[[77,[15]]],[[75,[23]]]],[[[77,[13]]],[[75,[19]]]],[[],[[75,[20]]]],[[[77,[15]]],[[75,[21]]]],[[[77,[12]]],[[75,[18]]]],[[[77,[15]]],[[75,[25]]]],[[[77,[13]]],[[75,[4]]]],[[],[[75,[73]]]],[[],[[75,[70]]]],[[],[[75,[17]]]],[[[77,[14]]],[[75,[5]]]],[[],[[75,[24]]]],[15,[[75,[21]]]],[12,[[75,[18]]]],[14,[[75,[16]]]],[13,[[75,[4]]]],[15,[[75,[23]]]],[14,[[75,[2]]]],[14,[[75,[5]]]],[13,[[75,[19]]]],[15,[[75,[25]]]],[15,[[75,[22]]]],[[[77,[14]]],[[75,[[5,[145]]]]]],[[[77,[14]]],[[75,[[2,[145]]]]]],[[[77,[14]]],[[75,[[16,[145]]]]]],[14,[[75,[[5,[145]]]]]],[14,[[75,[[2,[145]]]]]],[14,[[75,[[16,[145]]]]]],[[[104,[103,103]]],136],[[[104,[146,146]]],136],[[]],[[[75,[97]],[75,[97]]],[[75,[97]]]],[[[75,[97]],[75,[97]]],[[75,[97]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[97]],[75,[97]]],[[75,[97]]]],[[[75,[[24,[102]],102]]],[[136,[[75,[24]]]]]],[[[75,[[22,[102]],102]]],[[136,[[75,[22]]]]]],[[[75,[[20,[102]],102]]],[[136,[[75,[20]]]]]],[[[75,[[25,[102]],102]]],[[136,[[75,[25]]]]]],[[[75,[[19,[102]],102]]],[[136,[[75,[19]]]]]],[[[75,[[17,[102]],102]]],[[136,[[75,[17]]]]]],[[[75,[[5,[102]],102]]],[[136,[[75,[5]]]]]],[[[75,[[2,[102]],102]]],[[136,[[75,[2]]]]]],[[[75,[[4,[102]],102]]],[[136,[[75,[4]]]]]],[[[75,[[70,[102]],102]]],[[136,[[75,[70]]]]]],[[[75,[[16,[102]],102]]],[[136,[[75,[16]]]]]],[[[75,[[73,[102]],102]]],[[136,[[75,[73]]]]]],[[[75,[[23,[102]],102]]],[[136,[[75,[23]]]]]],[[[75,[[27,[102]],102]]],[[136,[[75,[27]]]]]],[[[75,[[26,[102]],102]]],[[136,[[75,[26]]]]]],[[[75,[[18,[102]],102]]],[[136,[[75,[18]]]]]],[[[75,[[21,[102]],102]]],[[136,[[75,[21]]]]]],[[[75,[97]]],[[66,[97]]]],[[[75,[[70,[102]],102]],[75,[70]]]],[[[75,[[22,[102]],102]],[75,[22]]]],[[[75,[[20,[102]],102]],[75,[20]]]],[[[75,[[18,[102]],102]],[75,[18]]]],[[[75,[[24,[102]],102]],[75,[24]]]],[[[75,[[25,[102]],102]],[75,[25]]]],[[[75,[[27,[102]],102]],[75,[27]]]],[[[75,[[26,[102]],102]],[75,[26]]]],[[[75,[[4,[102]],102]],[75,[4]]]],[[[75,[[21,[102]],102]],[75,[21]]]],[[[75,[[19,[102]],102]],[75,[19]]]],[[[75,[[23,[102]],102]],[75,[23]]]],[[[75,[[16,[102]],102]],[75,[16]]]],[[[75,[[2,[102]],102]],[75,[2]]]],[[[75,[[17,[102]],102]],[75,[17]]]],[[[75,[[5,[102]],102]],[75,[5]]]],[[[75,[[73,[102]],102]],[75,[73]]]],[[[75,[90,90]],[75,[90,90]]],3],[[[75,[147]]],[[75,[147]]]],[[[75,[148]]]],[[[75,[147]]],[[75,[147]]]],[[[75,[148]]]],[[[75,[[91,[[0,[91,11]]]],[0,[91,11]]]],[0,[91,11]]]],[[[75,[91,91]],[75,[91,91]]]],[[[75,[[92,[[0,[92,11]]]],[0,[92,11]]]],[0,[92,11]]]],[[[75,[92,92]],[75,[92,92]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[[75,[21]],[75,[21]]]],[[[75,[5]],[75,[5]]]],[[[75,[73]],[75,[73]]]],[[[75,[19]],[75,[19]]]],[[[75,[2]],[75,[2]]]],[[[75,[24]],[75,[24]]]],[[[75,[22]],[75,[22]]]],[[[75,[25]],[75,[25]]]],[[[75,[23]],[75,[23]]]],[[[75,[16]],[75,[16]]]],[[[75,[27]],[75,[27]]]],[[[75,[20]],[75,[20]]]],[[[75,[26]],[75,[26]]]],[[[75,[4]],[75,[4]]]],[[[75,[70]],[75,[70]]]],[[[75,[18]],[75,[18]]]],[[[75,[17]],[75,[17]]]],[[[75,[149]]]],[[[75,[150]]],[[75,[150]]]],[[[75,[151]]]],[[[104,[103,103]]]],[[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]],[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]],[[75,[[0,[97,98,99,11]],[0,[36,8,37,69,34,45,49,40,38,11]]]]]],[[]],[75],[[[75,[[10,[[0,[10,11]]]],[0,[10,11]]]],[0,[10,11]]]],[[[75,[10,10]],[75,[10,10]]]],[[[75,[88,88]],[75,[88,88]]]],[[[75,[[88,[[0,[88,11]]]],[0,[88,11]]]],[0,[88,11]]]],[[]],[[]],[[],93],[[],93],[[],93],[31,[[93,[75]]]],[[],93],[31,[[93,[75]]]],[[],[[93,[94]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[[[75,[96,96]],[75,[96,96]],44],3],[[]],[75],[105,[[75,[[16,[102]],102]]]],[105,[[75,[[22,[102]],102]]]],[105,[[75,[[4,[102]],102]]]],[105,[[75,[[21,[102]],102]]]],[105,[[75,[[27,[102]],102]]]],[105,[[75,[[25,[102]],102]]]],[105,[[75,[[18,[102]],102]]]],[105,[[75,[[17,[102]],102]]]],[105,[[75,[[70,[102]],102]]]],[105,[[75,[[24,[102]],102]]]],[105,[[75,[[23,[102]],102]]]],[105,[[75,[[2,[102]],102]]]],[105,[[75,[[20,[102]],102]]]],[105,[[75,[[19,[102]],102]]]],[105,[[75,[[26,[102]],102]]]],[105,[[75,[[73,[102]],102]]]],[105,[[75,[[5,[102]],102]]]],[[[75,[152]]],[[75,[152]]]],[[[75,[27]]],[[75,[27]]]],[[[75,[26]]],[[75,[26]]]],[[]],[75],[[[75,[97]],[75,[97]]],[[75,[97]]]],0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[66,[[0,[1,97]]]],[66,[[0,[1,97]]]]],3],[28],[28],[28],[28],[28],[[[66,[[0,[29,97]]]],[66,[[0,[29,97]]]]]],[[[66,[[0,[[29,[76]],97]]]],76]],[[[66,[[0,[[29,[153]],97]]]],153]],[[[66,[[0,[[30,[76]],97]]]],76]],[[[66,[[0,[[30,[153]],97]]]],153]],[[[66,[[0,[30,97]]]],[66,[[0,[30,97]]]]]],0,0,0,[[66,66],66],[[154,[66,[[0,[11,97,51,[51,[[0,[36,37,8,69,45,68,40,11]]]],99]]]],[66,[[0,[11,97,51,[51,[[0,[36,37,8,69,45,68,40,11]]]],99]]]]],[[66,[[0,[11,97,51,[51,[[0,[36,37,8,69,45,68,40,11]]]],99]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[97]]],32],[[[66,[97]]],31],[[[66,[97]]],31],[[[66,[97]]],32],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[33],[[[66,[97]],[66,[97]],33],[[66,[97]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[154,154],[155,155],[156,156],[157,157],[[[66,[[0,[11,97]]]]],[[66,[[0,[11,97]]]]]],[[]],[[]],[[]],[[]],[[]],0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[],[[66,[[0,[43,97]]]]]],[[]],[[]],[[],44],[[[66,[97]]],97],[[[66,[97]]],97],0,[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[[66,[[0,[[52,[153]],97]]]],153]],[[[66,[[0,[[52,[76]],97]]]],76]],[[[66,[[0,[52,97]]]],[66,[[0,[52,97]]]]]],[[[66,[[0,[[39,[153]],97]]]],153]],[[[66,[[0,[39,97]]]],[66,[[0,[39,97]]]]]],[[[66,[[0,[[39,[76]],97]]]],76]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[154,154],3],[[155,155],3],[[156,156],3],[[157,157],3],[[[66,[[0,[53,97]]]],[66,[[0,[53,97]]]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[154,57],58],[[155,57],58],[[156,57],58],[[157,57],58],[[[66,[[0,[56,97]]]],57],58],[[]],[[]],[[]],[[]],[[[32,[[66,[17]]]]],[[66,[[17,[64]]]]]],[32,[[66,[97]]]],[32,[[66,[97]]]],[65],[[[32,[[66,[73]]]]],[[66,[[73,[64]]]]]],[[]],[[[32,[[66,[20]]]]],[[66,[[20,[64]]]]]],[[[32,[[66,[27]]]]],[[66,[[27,[64]]]]]],[97,[[66,[97]]]],[[[32,[[66,[70]]]]],[[66,[[70,[64]]]]]],[[[32,[[66,[24]]]]],[[66,[[24,[64]]]]]],[[[75,[97]]],[[66,[97]]]],[[[32,[[66,[26]]]]],[[66,[[26,[64]]]]]],[32,[[66,[97]]]],[[]],[[]],[[]],[[]],[[]],[[155,155],154],[[157,157],154],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[[66,[[0,[143,97]]]],[66,[[0,[143,97]]]],[0,[36,8,37,34,40,11]]],[[66,[[0,[143,97]]]]]],[[[66,[[0,[144,97]]]],[66,[[0,[144,97]]]],[0,[36,8,37,34,40,30,11]]]],[[[66,[[0,[[51,[76]],97]]]],76]],[[[66,[[0,[51,97]]]],[66,[[0,[51,97]]]]]],[[[66,[[0,[[51,[153]],97]]]],153]],[[[66,[[0,[[89,[153]],97]]]],153]],[[[66,[[0,[[89,[76]],97]]]],76]],[[[66,[[0,[89,97]]]],[66,[[0,[89,97]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[97,[[66,[97]]]],[97,[[66,[97]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],[[],66],[[[66,[[0,[90,97]]]],[66,[[0,[90,97]]]]],3],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],[[]],[[[66,[[0,[97,98,99,11]]]],[66,[[0,[97,98,99,11]]]]],[[66,[[0,[97,98,99,11]]]]]],0,[[[66,[[0,[[10,[153]],97]]]],153]],[[[66,[[0,[[10,[76]],97]]]],76]],[[[66,[[0,[10,97]]]],[66,[[0,[10,97]]]]]],[[[66,[[0,[[88,[76]],97]]]],76]],[[[66,[[0,[88,97]]]],[66,[[0,[88,97]]]]]],[[[66,[[0,[[88,[153]],97]]]],153]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[31,[[93,[[66,[97]]]]]],[[],93],[31,[[93,[[66,[97]]]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[66,[[0,[96,97]]]],[66,[[0,[96,97]]]],44],3],[66],[[[66,[97]]],[[75,[97]]]],[[]],[[[66,[[0,[99,97]]]],[66,[[0,[99,97]]]]],[[66,[[0,[99,97]]]]]],0,0,0,0,0,0,[3],[[],3],[[],3],[[158,158]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[159,[32]]],32],[159],[[[159,[32]]],31],[159],[[[159,[32]]],31],[[[159,[32]]],32],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[160,160],[[[161,[11]]],[[161,[11]]]],[[[162,[11]]],[[162,[11]]]],[163,163],[[[159,[11]]],[[159,[11]]]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[160,160],3],[[[161,[53]],[161,[53]]],3],[[[162,[53]],[162,[53]]],3],[[163,163],3],[[[159,[53,53]],[159,[53,53]]],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[160,57],58],[[160,57],58],[[161,57],58],[[161,57],58],[[162,57],58],[[162,57],58],[[163,57],58],[[[159,[56,56]],57],58],[[]],[[]],[[]],[[]],[[],159],[32,[[159,[32]]]],[164,[[159,[[165,[164]]]]]],[32,[[159,[32]]]],[[[138,[[159,[[138,[[159,[[138,[159]]]]]]]]]]],[[159,[[138,[[159,[[138,[[159,[[138,[159]]]]]]]]]]]]]],[70,[[159,[[165,[166]]]]]],[73,[[159,[[165,[164]]]]]],[[]],[32,[[159,[32]]]],[166,[[159,[[165,[166]]]]]],[[[134,[[159,[[134,[[159,[[134,[159]]]]]]]]]]],[[159,[[134,[[159,[[134,[[159,[[134,[159]]]]]]]]]]]]]],[[]],[[]],[[]],[[]],[[]],[[],99],[32,[[32,[99]]]],[167,[[167,[99]]]],[[],99],[[],99],[31,[[31,[99]]]],[[[167,[31]]],[[167,[[31,[99]]]]]],[31,[[31,[99]]]],[102,[[102,[99]]]],[[]],[32,[[32,[99]]]],[31,[[31,[99]]]],[[[167,[31]]],[[167,[[31,[99]]]]]],[31,[[31,[99]]]],[102,[[102,[99]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],168],[32,[[32,[168]]]],[[],168],[[],168],[31,[[31,[168]]]],[[[167,[31]]],[[167,[[31,[168]]]]]],[31,[[31,[168]]]],[102,[[102,[168]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[99],[[[32,[99]]],32],[[[167,[99]]],167],[99],[99],[[[31,[99]]],31],[[[167,[[31,[99]]]]],[[167,[31]]]],[[[31,[99]]],31],[[[102,[99]]],102],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[32,[99]]],32],[[[31,[99]]],31],[[[167,[[31,[99]]]]],[[167,[31]]]],[[[31,[99]]],31],[[[102,[99]]],102],[[]],[[]],[[]],[[]],[[]],[[]],[168],[[[32,[168]]],32],[168],[168],[[[31,[168]]],31],[[[167,[[31,[168]]]]],[[167,[31]]]],[[[31,[168]]],31],[[[102,[168]]],102],[[]],0,[[[167,[[31,[99]]]],169],[[167,[[31,[99]]]]]],[[[102,[99]],169],[[102,[99]]]],[[]],[[],[[159,[165]]]],[[]],[[]],[[]],[[]],[[]],[[],170],[[],170],[[],170],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[31,[[93,[[159,[32]]]]]],[31,[[93,[[159,[32]]]]]],[31,[[93,[[31,[99]],160]]]],[[[167,[31]]],[[93,[[167,[[31,[99]]]],161]]]],[31,[[93,[[31,[99]],160]]]],[102,[[93,[[102,[99]],162]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[159,[165]]]],0,0,0,0,0,0,0,0,0,0,[[]],[28],[[]],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[26,[171]],[26,[171]]],172],[[],173],[174,[[173,[[0,[36,8,40,11]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[175,[83]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[94],[[]],[[]],[[]],[[[67,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[67,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[94,[56]]],179],[[[67,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[94,57],58],[[[94,[56]],57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[]],[[],86],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[86,[[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[67,[[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[176,[0,[178,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[]],[[]],[[]],[[]],[[],67],[[]],[[]],[[]],[[]],[[],86],[[]],[[]],[[]],[[[67,[[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[86,[[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[178,[0,[176,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[67,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]],[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]]],[[0,[[176,[[0,[[176,[[0,[[176,[[0,[[176,[[0,[176,177]]]],177]]]],177]]]],177]]]],177]]]],[[[86,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]],[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]]],[[0,[[178,[[0,[[178,[[0,[[178,[[0,[[178,[[0,[178,177]]]],177]]]],177]]]],177]]]],177]]]],[[[67,[[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[67,[[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[176,[[0,[[176,[176,[0,[176,177]]]],[176,[176,[0,[176,177]]]],177]]]],[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[176,[176,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[67,[[0,[[176,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[176,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]],[176,[[0,[[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],[176,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[176,[[0,[[176,[176,[0,[178,177]]]],[176,[176,[0,[178,177]]]],177]]]],[0,[[178,[[176,[[0,[176,176,177]]]],[0,[[178,[176,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[[67,[[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]],[[86,[[0,[[178,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[178,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],[0,[[176,[[178,[[0,[[178,[178,[0,[176,177]]]],[178,[178,[0,[176,177]]]],177]]]],[0,[[176,[[178,[[0,[178,178,177]]]],[0,[[176,[178,[0,[176,177]]]],177]]]],177]]]],177]]]]]],[[[86,[[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]]]]],[[86,[[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]],[178,[[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],[0,[[178,[[178,[[0,[[178,[178,[0,[178,177]]]],[178,[178,[0,[178,177]]]],177]]]],[0,[[178,[[178,[[0,[178,178,177]]]],[0,[[178,[178,[0,[178,177]]]],177]]]],177]]]],177]]]]]],[[],170],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,0,[[]],0,[[]],0,0,0,0,0,0,0,[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[181,[11,[0,[11,180]]]]],[[181,[11,[0,[11,180]]]]]],[[[182,[[0,[11,180]]]]],[[182,[[0,[11,180]]]]]],[183,183],[[]],[[]],[[]],[[]],[[]],[[]],[[[181,[53,[0,[53,180]]]],[181,[53,[0,[53,180]]]]],3],[[[182,[[0,[53,180]]]],[182,[[0,[53,180]]]]],3],[[183,183],3],[[],3],[[],3],[[],3],[[[181,[56,[0,[56,180]]]],57],58],[[[182,[[0,[56,180]]]],57],58],[[183,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,79]]],[[0,[36,79]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[36,37,79,52]]],[[0,[36,37,79,52]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[128,[11]]],[[128,[11]]]],[184,184],[[]],[[]],[[]],[[]],[[[128,[53]],[128,[53]]],3],[[184,184],3],[[],3],[[],3],[[[128,[56]],57],58],[[184,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],0,[28],[[]],[[]],[[],[[27,[171,36]]]],[[]],[[]],[145,145],[[]],[[]],[[145,145],3],[[],3],[[145,57],58],[[]],[[]],[76,133],[[[0,[36,79,185,40,38,11]]],[[0,[36,79,185,40,38,11]]]],[153,133],[[]],[[],[[27,[171,36]]]],[[]],[[]],[[]],[[]],[[[0,[36,79,186,40,38,11]]],[[0,[36,79,186,40,38,11]]]],[133,153],[133,76],[[]],[[],[[27,[171,36]]]],[[],[[136,[[172,[76]]]]]],[[]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[[],[[136,[[172,[76]]]]]],0,0,0,[28],[[]],[[]],[2,2],[[]],[[]],[[[2,[102]]]],[[[2,[11]]],[[2,[11]]]],[[[2,[11]]],[[2,[11]]]],[[]],[[[2,[84]]],[[2,[84]]]],[[[2,[84]]],[[2,[84]]]],[[[115,[103]]],105],[[[2,[102]],[0,[[106,[105]],11]]],[[115,[107]]]],[[]],[[]],[[],2],[2,[[2,[[0,[63,130]]]]]],[[]],[[[2,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[2]]]],[[[2,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[2]]]],0,[[]],[[]],[[]],[[]],[2],[2,[[2,[[0,[63,130]]]]]],[[]],[[]],[2],[2],[[[115,[140]]],105],0,[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],2],[14,2],[[[77,[14]]],[[2,[145]]]],[14,[[2,[145]]]],[[[115,[103]]],136],[[[115,[146]]],136],[[[2,[102]]],[[136,[2]]]],[[[2,[102]],2]],0,[[2,2]],[[[115,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[2,[102]]]],0,0,0,[28],[[]],[[]],[4,4],[[]],[[]],[[[4,[102]]]],[[[4,[11]]],[[4,[11]]]],[[[4,[11]]],[[4,[11]]]],[[]],[[[4,[84]]],[[4,[84]]]],[[[4,[84]]],[[4,[84]]]],[[[108,[103]]],105],[[[4,[102]],[0,[[106,[105]],11]]],[[108,[107]]]],[[]],[[]],[[],4],[[]],[[[4,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[4]]]],[[[4,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[4]]]],0,[[]],[[]],[[]],[[]],[4],[[]],[[]],[4],[4],0,[[[108,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[13]]],4],[13,4],[[[108,[103]]],136],[[[108,[146]]],136],[[[4,[102]]],[[136,[4]]]],[[[4,[102]],4]],0,[[4,4]],[[[108,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[4,[102]]]],0,0,0,[28],[[]],[[]],[5,5],[[]],[[]],[[[5,[102]]]],[[[5,[11]]],[[5,[11]]]],[[[5,[11]]],[[5,[11]]]],[[]],[[[5,[84]]],[[5,[84]]]],[[[5,[84]]],[[5,[84]]]],[[[116,[103]]],105],[[[5,[102]],[0,[[106,[105]],11]]],[[116,[107]]]],[[]],[[]],[[],5],[5,[[5,[[0,[63,130]]]]]],[[]],[[[5,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[5]]]],[[[5,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[5]]]],0,[[]],[[]],[[]],[[]],[5],[5,[[5,[[0,[63,130]]]]]],[[]],[[]],[5],[5],[[[116,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],5],[14,5],[[[77,[14]]],[[5,[145]]]],[14,[[5,[145]]]],[[[116,[103]]],136],[[[116,[146]]],136],[[[5,[102]]],[[136,[5]]]],[[[5,[102]],5]],0,[[5,5]],[[[116,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[5,[102]]]],0,0,0,0,0,0,0,0,[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[12,12],[13,13],[14,14],[15,15],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[102]]]],[[[13,[102]]]],[[[14,[102]]]],[[[15,[102]]]],[[[12,[11]]],[[12,[11]]]],[[[12,[11]]],[[12,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[13,[11]]],[[13,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[14,[11]]],[[14,[11]]]],[[[15,[11]]],[[15,[11]]]],[[[15,[11]]],[[15,[11]]]],[[]],[[]],[[]],[[]],[[[12,[84]]],[[12,[84]]]],[[[12,[84]]],[[12,[84]]]],[[[13,[84]]],[[13,[84]]]],[[[13,[84]]],[[13,[84]]]],[[[14,[84]]],[[14,[84]]]],[[[14,[84]]],[[14,[84]]]],[[[15,[84]]],[[15,[84]]]],[[[15,[84]]],[[15,[84]]]],[[[187,[103]]],105],[[[188,[103]]],105],[[[189,[103]]],105],[[[190,[103]]],105],[[[12,[102]],[0,[[106,[105]],11]]],[[187,[107]]]],[[[13,[102]],[0,[[106,[105]],11]]],[[188,[107]]]],[[[14,[102]],[0,[[106,[105]],11]]],[[189,[107]]]],[[[15,[102]],[0,[[106,[105]],11]]],[[190,[107]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[12,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[13,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[14,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[[[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]],[0,[[29,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]],[[15,[[0,[[29,[[0,[[29,[[0,[[29,[[0,[29,87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]],87]],[0,[6,48]]]]]],[6,[[12,[6]]]],[6,[[13,[6]]]],[6,[[14,[6]]]],[6,[[15,[6]]]],[12,[[12,[130]]]],[13,[[13,[130]]]],[14,[[14,[130]]]],[15,[[15,[130]]]],[6,[[12,[6]]]],[6,[[13,[6]]]],[6,[[14,[6]]]],[6,[[15,[6]]]],[[]],[[]],[[]],[[]],[[[12,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[12]]]],[[[13,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[13]]]],[[[14,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[14]]]],[[[15,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[15]]]],[[[12,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[12]]]],[[[13,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[13]]]],[[[14,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[14]]]],[[[15,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[15]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[[0,[6,48]]]]]],[[[13,[[0,[6,48]]]]]],[[[14,[[0,[6,48]]]]]],[[[15,[[0,[6,48]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[12,[[0,[6,7]]]]],[[0,[6,7]]]],[[[13,[[0,[6,7]]]]],[[0,[6,7]]]],[[[14,[[0,[6,7]]]]],[[0,[6,7]]]],[[[15,[[0,[6,7]]]]],[[0,[6,7]]]],[12,[[12,[130]]]],[13,[[13,[130]]]],[14,[[14,[130]]]],[15,[[15,[130]]]],[12],[13],[14],[15],[[]],[[]],[[]],[[]],[[[12,[[0,[6,191]]]]],[[0,[6,191]]]],[[[13,[[0,[6,191]]]]],[[0,[6,191]]]],[[[14,[[0,[6,191]]]]],[[0,[6,191]]]],[[[15,[[0,[6,191]]]]],[[0,[6,191]]]],[[[12,[[0,[6,191]]]]],[[0,[6,191]]]],[[[13,[[0,[6,191]]]]],[[0,[6,191]]]],[[[14,[[0,[6,191]]]]],[[0,[6,191]]]],[[[15,[[0,[6,191]]]]],[[0,[6,191]]]],[[[12,[[0,[6,7]]]]],[[0,[6,7]]]],[[[13,[[0,[6,7]]]]],[[0,[6,7]]]],[[[14,[[0,[6,7]]]]],[[0,[6,7]]]],[[[15,[[0,[6,7]]]]],[[0,[6,7]]]],[[[12,[6]]],6],[[[13,[6]]],6],[[[14,[6]]],6],[[[15,[6]]],6],[[[12,[6]]],6],[[[13,[6]]],6],[[[14,[6]]],6],[[[15,[6]]],6],[[]],[[]],[[]],[[]],[12],[13],[14],[15],[12],[13],[14],[15],[[[187,[140]]],105],[[[188,[140]]],105],[[[189,[140]]],105],[[[190,[140]]],105],[[],12],[[],13],[[],14],[[],15],[[[187,[103]]],136],[[[188,[103]]],136],[[[189,[103]]],136],[[[190,[103]]],136],[[[187,[146]]],136],[[[188,[146]]],136],[[[189,[146]]],136],[[[190,[146]]],136],[[[12,[102]]],[[136,[12]]]],[[[13,[102]]],[[136,[13]]]],[[[14,[102]]],[[136,[14]]]],[[[15,[102]]],[[136,[15]]]],[[[12,[102]],12]],[[[13,[102]],13]],[[[14,[102]],14]],[[[15,[102]],15]],[[12,12]],[[13,13]],[[14,14]],[[15,15]],[[[187,[103]]]],[[[188,[103]]]],[[[189,[103]]]],[[[190,[103]]]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[105,[[12,[102]]]],[105,[[13,[102]]]],[105,[[14,[102]]]],[105,[[15,[102]]]],0,0,0,[28],[[]],[[]],[16,16],0,[[]],[[]],[[[16,[102]]]],[[[16,[11]]],[[16,[11]]]],[[[16,[11]]],[[16,[11]]]],[[]],[[[16,[84]]],[[16,[84]]]],[[[16,[84]]],[[16,[84]]]],[[[119,[103]]],105],[[[16,[102]],[0,[[106,[105]],11]]],[[119,[107]]]],[[]],[[]],[[],16],[16,[[16,[[0,[63,130]]]]]],[[]],[[[16,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[16]]]],[[[16,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[16]]]],0,[[]],[[]],[[]],[[]],[16],[16,[[16,[[0,[63,130]]]]]],[[]],[[]],[16],[16],[[[119,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[14]]],16],[14,16],[[[77,[14]]],[[16,[145]]]],[14,[[16,[145]]]],[[[119,[103]]],136],[[[119,[146]]],136],[[[16,[102]]],[[136,[16]]]],[[[16,[102]],16]],[[16,16]],[[[119,[103]]]],0,[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[16,[102]]]],0,0,0,0,[28],[[]],[[]],[17,17],0,[[]],[[]],[[[17,[102]]]],[[[17,[11]]],[[17,[11]]]],[[[17,[11]]],[[17,[11]]]],[[]],[[[17,[84]]],[[17,[84]]]],[[[17,[84]]],[[17,[84]]]],[[[112,[103]]],105],[[[17,[102]],[0,[[106,[105]],11]]],[[112,[107]]]],[[]],[[]],[[],17],[[]],[[[17,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[17]]]],[[[17,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[17]]]],[[]],[[]],[[]],[[]],[17],[[]],[[]],[17],[17],0,[[[112,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],17],[[[112,[103]]],136],[[[112,[146]]],136],[[[17,[102]]],[[136,[17]]]],[[[17,[102]],17]],[[17,17]],[[[112,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[17,[102]]]],0,0,0,[28],[[]],[[]],[18,18],[[]],[[]],0,[[[18,[102]]]],[[[18,[11]]],[[18,[11]]]],[[[18,[11]]],[[18,[11]]]],[[]],[[[18,[84]]],[[18,[84]]]],[[[18,[84]]],[[18,[84]]]],[[[111,[103]]],105],[[[18,[102]],[0,[[106,[105]],11]]],[[111,[107]]]],[[]],[[]],[[],18],[[]],[[[18,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[18]]]],[[[18,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[18]]]],0,[[]],[[]],[[]],[[]],[18],[[]],[[]],[18],[18],0,[[[111,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[12]]],18],[12,18],[[[111,[103]]],136],[[[111,[146]]],136],[[[18,[102]]],[[136,[18]]]],[[[18,[102]],18]],[[18,18]],[[[111,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[18,[102]]]],0,0,0,[28],[[]],[[]],[19,19],[[]],[[]],0,[[[19,[102]]]],[[[19,[11]]],[[19,[11]]]],[[[19,[11]]],[[19,[11]]]],[[]],[[[19,[84]]],[[19,[84]]]],[[[19,[84]]],[[19,[84]]]],[[[114,[103]]],105],[[[19,[102]],[0,[[106,[105]],11]]],[[114,[107]]]],[[]],[[]],[[],19],[[]],[[[19,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[19]]]],[[[19,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[19]]]],0,[[]],[[]],[[]],[[]],[19],[[]],[[]],[19],[19],0,[[[114,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[[77,[13]]],19],[13,19],[[[114,[103]]],136],[[[114,[146]]],136],[[[19,[102]]],[[136,[19]]]],[[[19,[102]],19]],[[19,19]],[[[114,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[19,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[73,[1]],[73,[1]]],3],[[[73,[1]],[73,[1]]],3],[28],[28],[28],[[[73,[29]],[73,[29]]]],[[[73,[[0,[29,11]]]],[0,[29,11]]]],[[[73,[30]],[73,[30]]]],[[[73,[[0,[30,11]]]],[0,[30,11]]]],[[]],[[]],[[]],[[]],[73,32],[73,31],[73],[73],[73,31],[73,32],[73,73],[[]],[33],[[]],[[]],[[]],[[]],0,[[[73,[[0,[34,35]]]]],[[73,[[0,[34,35]]]]]],[[[73,[[0,[42,35]]]]]],[[[73,[102]]]],[[[73,[11]]],[[73,[11]]]],[[]],[[[73,[11]]],[[73,[11]]]],[[[73,[11]]],[[73,[11]]]],[[]],[[]],[[[73,[84]]],[[73,[84]]]],[[[73,[84]]],[[73,[84]]]],[[[121,[103]]],105],[[],[[73,[35]]]],[[]],[[]],[[],44],[[[73,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[73,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[73,[52]],[73,[52]]]],[[[73,[[0,[52,11]]]],[0,[52,11]]]],[[[73,[39]],[73,[39]]]],[[[73,[[0,[39,11]]]],[0,[39,11]]]],[[[73,[102]],[0,[[106,[105]],11]]],[[121,[107]]]],[[[73,[53]],[73,[53]]],3],[[],3],[[[73,[54]],55]],[[[73,[56,56]],57],58],[[[73,[125]],57],58],[[[73,[126]],57],58],[[[159,[[165,[164]]]]],164],[132,[[164,[133]]]],[[]],[44,[[73,[44]]]],[132,[[73,[132]]]],[65],[153,[[73,[153]]]],[32,73],[192,[[73,[192]]]],[[[66,[73]]],73],[153,[[73,[153]]]],[133,[[73,[133]]]],[32,73],[[[32,[73]]],[[73,[64]]]],[132,[[73,[132]]]],[[],73],[132,[[73,[133]]]],[[[159,[[165,[[164,[133]]]]]]],[[73,[133]]]],[44,[[73,[44]]]],[32,73],[76,[[73,[76]]]],[133,[[73,[133]]]],[193,[[73,[193]]]],[193,[[73,[193]]]],[192,[[73,[192]]]],[76,[[73,[76]]]],[[],73],[[]],[[]],[[]],[[]],[[],67],[26,[[73,[72]]]],[21,[[73,[72]]]],[17,[[73,[72]]]],[[[70,[71]]],[[73,[72]]]],[18,[[73,[72]]]],[[[73,[72]]],[[73,[72]]]],[20,[[73,[72]]]],[22,[[73,[72]]]],[4,[[73,[72]]]],[[[75,[[74,[73]]]]],73],[19,[[73,[72]]]],[[[16,[71]]],[[73,[72]]]],[[[5,[71]]],[[73,[72]]]],[25,[[73,[72]]]],[[[2,[71]]],[[73,[72]]]],[27,[[73,[72]]]],[23,[[73,[72]]]],[24,[[73,[72]]]],[[],86],[[],73],[[[73,[72]]],[[73,[128]]]],[73,[[73,[63]]]],[55,[[73,[43]]]],[[[73,[128]]],[[73,[72]]]],[[]],[[]],[132,[[164,[133]]]],[132,[[73,[133]]]],[[[73,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[73]]]],[[[73,[72,[0,[36,40,38]]]],[73,[72,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[73,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[73]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[]],[[]],[[],86],[73],[[[73,[128]]],[[73,[72]]]],[73,[[73,[63]]]],[73],[[[73,[55]]]],[73],[[]],[[[73,[72]]],[[73,[128]]]],[[]],[[]],[[[164,[133]]],132],[[[73,[133]]],132],[[[73,[[0,[38,35]]]]]],[73],[73],[[[121,[140]]],105],[[[73,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[73,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[73,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[73,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[73,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[73,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],0,[[],35],[[],35],[[[73,[[0,[36,8,37,40,34,11]]]],[73,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[73,[[0,[36,8,37,40,34,11]]]]]],[[[73,[[0,[36,8,37,30,40,34,11]]]],[73,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[73,[51]],[73,[51]]]],[[[73,[[0,[51,11]]]],[0,[51,11]]]],[[[73,[[0,[89,11]]]],[0,[89,11]]]],[[[73,[89]],[73,[89]]]],[[],73],[[[121,[103]]],136],[[[121,[146]]],136],[[]],[[]],[[]],[[[73,[102]]],[[136,[73]]]],[[[73,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[73,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[73,[102]],73]],[[[73,[90]],[73,[90]]],3],[[[73,[72,[0,[36,[29,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],38,69]]]],38,69]]]]],[[73,[[128,[83]]]]]],[[[73,[90]],[73,[90]]],3],[[[73,[[0,[91,11]]]],[0,[91,11]]]],[[[73,[91]],[73,[91]]]],[[[73,[[0,[92,11]]]],[0,[92,11]]]],[[[73,[92]],[73,[92]]]],[[73,73]],[[[121,[103]]]],[73],0,[[[73,[[0,[10,11]]]],[0,[10,11]]]],[[[73,[10]],[73,[10]]]],[[[73,[88]],[73,[88]]]],[[[73,[[0,[88,11]]]],[0,[88,11]]]],[[]],[[],93],[[],93],[31,[[93,[73]]]],[31,[[93,[73]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[[[73,[96]],[73,[96]],44],3],[[[73,[96]],[73,[96]],44],3],[[[66,[[73,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[73,35]],[105,[[73,[102]]]],[73],[[]],0,0,[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[194,194],[195,195],[[]],[[]],[[]],[[]],[[194,194],3],[[195,195],3],[[],3],[[],3],[[194,57],58],[[195,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],132],[164,32],[[],132],[164,32],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[]],[[]],[[]],[[]],[132],[32,164],[32,164],[132],0,0,0,[28],[[]],[[]],[20,20],[[]],[[]],[[[20,[102]]]],[[[20,[11]]],[[20,[11]]]],[[[20,[11]]],[[20,[11]]]],[[]],[[[20,[84]]],[[20,[84]]]],[[[20,[84]]],[[20,[84]]]],[[[123,[103]]],105],[[[20,[102]],[0,[[106,[105]],11]]],[[123,[107]]]],[[]],[[]],[[],20],[[]],[[[20,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[20]]]],[[[20,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[20]]]],[[]],[[]],[[]],[[]],[20],[[]],[[]],[20],[20],0,[[[123,[140]]],105],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],[[0,[8,36]]]],[[],20],[[[123,[103]]],136],[[[123,[146]]],136],[[[20,[102]]],[[136,[20]]]],[[[20,[102]],20]],[[20,20]],[[[123,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],0,[[]],[[]],0,0,[105,[[20,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[179,[[136,[[60,[133]]]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[32],[76],[[]],[[]],[[]],[[]],[[],32],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[196],[44],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[28],[[]],[[]],[21,21],[[]],[[]],[[[21,[102]]]],[[[21,[11]]],[[21,[11]]]],[[[21,[11]]],[[21,[11]]]],[[]],[[[21,[84]]],[[21,[84]]]],[[[21,[84]]],[[21,[84]]]],[[[122,[103]]],105],[[[21,[102]],[0,[[106,[105]],11]]],[[122,[107]]]],[[]],[[]],[[],21],[21,[[21,[[0,[63,130]]]]]],[[]],[[[21,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[21]]]],[[[21,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[21]]]],0,[[]],[[]],[[]],[[]],[21],[21,[[21,[[0,[63,130]]]]]],[[]],[[]],[21],[21],[[[122,[140]]],105],0,[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],21],[15,21],[[[122,[103]]],136],[[[122,[146]]],136],[[[21,[102]]],[[136,[21]]]],[[[21,[102]],21]],0,[[21,21]],[[[122,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[21,[102]]]],0,0,0,[28],[[]],[[]],[22,22],[[]],[[]],[[[22,[102]]]],[[[22,[11]]],[[22,[11]]]],[[[22,[11]]],[[22,[11]]]],[[]],[[[22,[84]]],[[22,[84]]]],[[[22,[84]]],[[22,[84]]]],[[[120,[103]]],105],[[[22,[102]],[0,[[106,[105]],11]]],[[120,[107]]]],[[]],[[]],[[],22],[[]],[[[22,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[22]]]],[[[22,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[22]]]],0,[[]],[[]],[[]],[[]],[22],[22,[[22,[[0,[63,130]]]]]],[[]],[[]],[22],[22],[[[120,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],22],[15,22],[[[120,[103]]],136],[[[120,[146]]],136],[[[22,[102]]],[[136,[22]]]],[[[22,[102]],22]],0,[[22,22]],[[[120,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[22,[102]]]],0,0,0,[28],[[]],[[]],[23,23],0,[[]],[[]],[[[23,[102]]]],[[[23,[11]]],[[23,[11]]]],[[[23,[11]]],[[23,[11]]]],[[]],[[[23,[84]]],[[23,[84]]]],[[[23,[84]]],[[23,[84]]]],[[[113,[103]]],105],[[[23,[102]],[0,[[106,[105]],11]]],[[113,[107]]]],[[]],[[]],[[],23],[[]],[[[23,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[23]]]],[[[23,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[23]]]],0,[[]],[[]],[[]],[[]],[23],[23,[[23,[[0,[63,130]]]]]],[[]],[[]],[23],[23],[[[113,[140]]],105],[[],35],[[],35],[[],35],[[],35],[[[77,[15]]],23],[15,23],[[[113,[103]]],136],[[[113,[146]]],136],[[[23,[102]]],[[136,[23]]]],[[[23,[102]],23]],[[23,23]],[[[113,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[23,[102]]]],0,0,0,0,[28],[[]],[[]],[24,24],0,[[]],[[]],[[[24,[102]]]],[[[24,[11]]],[[24,[11]]]],[[[24,[11]]],[[24,[11]]]],[[]],[[[24,[84]]],[[24,[84]]]],[[[24,[84]]],[[24,[84]]]],[[[110,[103]]],105],[[[24,[102]],[0,[[106,[105]],11]]],[[110,[107]]]],[[]],[[]],[[],24],[[]],[[[24,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[24]]]],[[[24,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[24]]]],[[]],[[]],[[]],[[]],[24],[[]],[[]],[24],[24],0,[[[110,[140]]],105],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],24],[[[110,[103]]],136],[[[110,[146]]],136],[[[24,[102]]],[[136,[24]]]],[[[24,[102]],24]],[[24,24]],[[[110,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[24,[102]]]],0,0,0,[28],[[]],[[]],[25,25],[[]],[[]],0,[[[25,[102]]]],[[[25,[11]]],[[25,[11]]]],[[[25,[11]]],[[25,[11]]]],[[]],[[[25,[84]]],[[25,[84]]]],[[[25,[84]]],[[25,[84]]]],[[[109,[103]]],105],[[[25,[102]],[0,[[106,[105]],11]]],[[109,[107]]]],[[]],[[]],[[],25],[[]],[[[25,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[25]]]],[[[25,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[25]]]],0,[[]],[[]],[[]],[[]],[25],[[]],[[]],[25],[25],0,[[[109,[140]]],105],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[[77,[15]]],25],[15,25],[[[109,[103]]],136],[[[109,[146]]],136],[[[25,[102]]],[[136,[25]]]],[[[25,[102]],25]],[[25,25]],[[[109,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],[105,[[25,[102]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[70,[1]],[70,[1]]],3],[[[70,[1]],[70,[1]]],3],[28],[28],[28],[28],[[[70,[29]],[70,[29]]]],[[[70,[[0,[29,11]]]],[0,[29,11]]]],[[[70,[[0,[30,11]]]],[0,[30,11]]]],[[[70,[30]],[70,[30]]]],[[]],[[]],[[]],[[]],[[]],[[]],[70,31],[70,32],[70,32],[70,31],[70,70],[[]],[33],[[],[[27,[171]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[[[70,[[0,[34,35]]]]],[[70,[[0,[34,35]]]]]],[[[70,[[0,[42,35]]]]]],[[[70,[102]]]],[[[70,[11]]],[[70,[11]]]],[[]],[[[70,[11]]],[[70,[11]]]],[[[70,[11]]],[[70,[11]]]],[[]],[[]],[[]],[[[70,[84]]],[[70,[84]]]],[[[70,[84]]],[[70,[84]]]],[[[118,[103]]],105],[[],[[70,[35]]]],[[]],[[]],[[],44],[[[70,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]],[70,[[0,[36,[10,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[29,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],[51,[[0,[36,[10,[[0,[36,10,29,51,11]]]],[29,[[0,[36,10,29,51,11]]]],[51,[[0,[36,10,29,51,11]]]],11]]]],11]]]],11]]]]]],[[[70,[[0,[52,11]]]],[0,[52,11]]]],[[[70,[52]],[70,[52]]]],[[[70,[[0,[39,11]]]],[0,[39,11]]]],[[[70,[39]],[70,[39]]]],[[[70,[102]],[0,[[106,[105]],11]]],[[118,[107]]]],[[[70,[53]],[70,[53]]],3],[[],3],[[[70,[54]],55]],[[[70,[56,56]],57],58],[[[70,[126]],57],58],[[[70,[125]],57],58],[[197,57],58],[[197,57],58],[44,[[166,[133]]]],[[[159,[[165,[166]]]]],166],[[[32,[70]]],[[70,[64]]]],[[[159,[[165,[[166,[133]]]]]]],[[70,[133]]]],[32,70],[32,70],[[],70],[32,70],[[]],[44,[[70,[133]]]],[[[66,[70]]],70],[[]],[179,197],[[]],[198,197],[[]],[[]],[[]],[[]],[[],67],[25,70],[27,[[70,[71]]]],[23,70],[[[2,[[0,[36,6,191,8,37,49,199,38,40,11]]]]],[[70,[[0,[36,6,191,8,37,49,199,38,40,11]]]]]],[20,[[70,[71]]]],[19,[[70,[71]]]],[[[24,[[0,[36,40,84]]]]],[[70,[71,[0,[36,40,84]]]]]],[21,70],[[[26,[[0,[40,85]]]]],[[70,[71,[0,[40,85]]]]]],[4,[[70,[71]]]],[17,[[70,[71]]]],[22,70],[[[5,[[0,[36,6,191,199,8,37,49,38,40,11]]]]],[[70,[[0,[36,6,191,199,8,37,49,38,40,11]]]]]],[[[75,[[74,[70]]]]],70],[[[70,[71]]],[[70,[71]]]],[18,[[70,[71]]]],[[[73,[72,11]]],[[70,[71,11]]]],[16,70],[[],86],[[],70],[[[70,[71]]],[[70,[[128,[129]]]]]],[70,[[70,[63]]]],[55,[[70,[43]]]],[[[70,[128]]],[[70,[71]]]],[[]],[[]],[[]],[179,[[93,[[166,[133]]]]]],[179,[[93,[[70,[133]]]]]],[44,[[166,[133]]]],[44,[[70,[133]]]],[[[70,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[70]]]],[[[70,[71,[0,[36,40,38]]]],[70,[71,[0,[36,40,38]]]]],[[0,[36,40,38]]]],[[[70,[[0,[36,6,48,40,11]]]]],[[14,[[0,[36,6,48,40,11]]]]]],[[[70,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[70]]]],[[],[[27,[171]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],67],[[]],[[]],[[]],[[],86],[70],[[[70,[[128,[129]]]]],[[70,[71]]]],[70,[[70,[63]]]],[[[70,[55]]]],[70],[70],[[]],[[[70,[71]]],[[70,[128]]]],[[]],[[]],[[]],[[[166,[133]]],44],[[[70,[133]]],44],[[[70,[[0,[38,35]]]]]],[70],[70],[[[118,[140]]],105],[[[70,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[70,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[70,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[[70,[[0,[36,8,69,34,40,38,11,35]]]],[0,[36,8,69,34,40,38,11,35]]],[[70,[[0,[36,8,69,34,40,38,11,35]]]]]],[[[70,[[0,[36,8,69,42,30,40,38,11,35]]]],[0,[36,8,69,42,30,40,38,11,35]]]],[[],35],[[],35],[[],35],[[],35],[[],35],[[],35],[[[70,[[0,[36,8,37,40,34,11]]]],[70,[[0,[36,8,37,40,34,11]]]],[0,[36,8,37,40,34,11]]],[[70,[[0,[36,8,37,40,34,11]]]]]],[[[70,[[0,[36,8,37,30,40,34,11]]]],[70,[[0,[36,8,37,30,40,34,11]]]],[0,[36,8,37,30,40,34,11]]]],[[[70,[51]],[70,[51]]]],[[[70,[[0,[51,11]]]],[0,[51,11]]]],[[[70,[89]],[70,[89]]]],[[[70,[[0,[89,11]]]],[0,[89,11]]]],[[],70],[[[118,[103]]],136],[[[118,[146]]],136],[[]],[[]],[[]],[[[70,[102]]],[[136,[70]]]],[[[70,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]],11]]],[[66,[[70,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[[70,[102]],70]],[[],[[27,[171]]]],0,[[[70,[90]],[70,[90]]],3],[[[70,[71,[0,[36,[29,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],[52,[[0,[36,[29,[[0,[36,29,52,38,69]]]],[52,[[0,[36,29,52,38,69]]]],38,69]]]],38,69]]]],38,69]]]]],[[73,[[128,[83]]]]]],[[[70,[90]],[70,[90]]],3],[[],[[136,[[172,[76]]]]]],[[[70,[91]],[70,[91]]]],[[[70,[[0,[91,11]]]],[0,[91,11]]]],[[[70,[92]],[70,[92]]]],[[[70,[[0,[92,11]]]],[0,[92,11]]]],[[70,70]],[[[118,[103]]]],[197,[[136,[200]]]],[70],0,[[[70,[10]],[70,[10]]]],[[[70,[[0,[10,11]]]],[0,[10,11]]]],[[[70,[[0,[88,11]]]],[0,[88,11]]]],[[[70,[88]],[70,[88]]]],[[]],[[],170],[[],93],[[],93],[[],93],[[],93],[31,[[93,[70]]]],[31,[[93,[70]]]],[[],93],[[],93],[[],[[93,[94]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[[70,[96]],[70,[96]],44],3],[[[70,[96]],[70,[96]],44],3],[[[66,[[70,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],[52,[[0,[36,35,8,68,[51,[[0,[36,35,8,68,51,52,11]]]],[52,[[0,[36,35,8,68,51,52,11]]]],11]]]],11]]]],11]]]]]]]],[[70,35]],[105,[[70,[102]]]],[70],[[]],[[],[[136,[[172,[76]]]]]],0,0,0,0,[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[201,201],[202,202],[203,203],[204,204],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[201,201],3],[[202,202],3],[[203,203],3],[[204,204],3],[[],3],[[],3],[[],3],[[],3],[[201,57],58],[[202,57],58],[[203,57],58],[[204,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[166,32],[[],44],[[],44],[166,32],[166,32],[[],44],[166,32],[[],44],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[32,166],[44],[32,166],[44],[44],[32,166],[44],[32,166],0,0,0,0,[[]],[[]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[28],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[171,171],[205,205],[206,206],[207,207],[208,208],[209,209],[83,83],[210,210],[211,211],[212,212],[213,213],[214,214],[215,215],[216,216],[217,217],[218,218],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[171,171],3],[[205,205],3],[[206,206],3],[[207,207],3],[[208,208],3],[[209,209],3],[[83,83],3],[[210,210],3],[[211,211],3],[[212,212],3],[[213,213],3],[[214,214],3],[[215,215],3],[[216,216],3],[[217,217],3],[[218,218],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[],3],[[171,57],58],[[205,57],58],[[206,57],58],[[207,57],58],[[208,57],58],[[209,57],58],[[83,57],58],[[210,57],58],[[211,57],58],[[212,57],58],[[213,57],58],[[214,57],58],[[215,57],58],[[216,57],58],[[217,57],58],[[218,57],58],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[[26,[171]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[],[[26,[171,36]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],[[93,[94]]]],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[],95],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,[28],[[]],[[]],[26,26],[[]],[[]],[[[26,[102]]]],[[[26,[11]]],[[26,[11]]]],[[[26,[11]]],[[26,[11]]]],[[]],[[[26,[84]]],[[26,[84]]]],[[[26,[84]]],[[26,[84]]]],[[[124,[103]]],105],[[[26,[102]],[0,[[106,[105]],11]]],[[124,[107]]]],[[]],[[]],[[],26],[[]],[[[26,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[26]]]],[[[26,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[26]]]],[[]],[[]],[[]],[[]],[26],[[]],[[]],[26],[26],[[[124,[140]]],105],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],26],[[[124,[103]]],136],[[[124,[146]]],136],[[[26,[102]]],[[136,[26]]]],[[[26,[102]],26]],[[26,26]],[[[124,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[26,[102]]]],[26,26],0,0,0,0,0,0,[28],[[]],[[]],[27,27],[[]],[[]],[[[27,[102]]]],[[[27,[11]]],[[27,[11]]]],[[[27,[11]]],[[27,[11]]]],[[]],[[[27,[84]]],[[27,[84]]]],[[[27,[84]]],[[27,[84]]]],[[[117,[103]]],105],[[[27,[102]],[0,[[106,[105]],11]]],[[117,[107]]]],[[]],[[]],[[],27],[[]],[[[27,[[134,[31]]]],[0,[[135,[31]],11]]],[[136,[27]]]],[[[27,[[138,[31]]]],[0,[[135,[31]],11]]],[[136,[27]]]],[[]],[[]],[[]],[[]],[27],[[]],[[]],[27],[27],[[[117,[140]]],105],0,[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],[[0,[8,37]]]],[[],27],[[[117,[103]]],136],[[[117,[146]]],136],[[[27,[102]]],[[136,[27]]]],[[[27,[102]],27]],[[27,27]],[[[117,[103]]]],[[],93],[[],93],[[],93],[[],[[93,[94]]]],[[],95],[[]],[[]],0,[105,[[27,[102]]]],[27,27],0,0],"c":[64,68,497,1173,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,3350,3356,3367],"p":[[8,"AbsDiffEq"],[3,"Hsl"],[15,"bool"],[3,"Hsluv"],[3,"Hsv"],[8,"RealAngle"],[8,"SignedAngle"],[8,"Zero"],[8,"AngleEq"],[8,"Sub"],[8,"Clone"],[3,"LabHue"],[3,"LuvHue"],[3,"RgbHue"],[3,"OklabHue"],[3,"Hwb"],[3,"Lab"],[3,"Lch"],[3,"Lchuv"],[3,"Luv"],[3,"Okhsl"],[3,"Okhsv"],[3,"Okhwb"],[3,"Oklab"],[3,"Oklch"],[3,"Xyz"],[3,"Yxy"],[8,"TransformMatrix"],[8,"Add"],[8,"AddAssign"],[15,"slice"],[15,"array"],[8,"BlendFunction"],[8,"Clamp"],[8,"Stimulus"],[8,"Real"],[8,"One"],[8,"PartialCmp"],[8,"DivAssign"],[8,"Arithmetics"],[8,"WhitePoint"],[8,"ClampAssign"],[8,"Default"],[15,"u32"],[8,"Sqrt"],[8,"Powi"],[8,"Exp"],[8,"Trigonometry"],[8,"Abs"],[8,"Hypot"],[8,"Mul"],[8,"Div"],[8,"PartialEq"],[8,"Extend"],[8,"IntoIterator"],[8,"Debug"],[3,"Formatter"],[6,"Result"],[6,"LinSrgb"],[6,"Srgb"],[6,"Srgba"],[6,"LinSrgba"],[8,"FromStimulus"],[8,"FromScalarArray"],[15,"never"],[3,"PreAlpha"],[3,"FromColorMutGuard"],[8,"IsValidDivisor"],[8,"MinMax"],[3,"Rgb"],[8,"RgbStandard"],[8,"LumaStandard"],[3,"Luma"],[8,"IntoColorUnclamped"],[3,"Alpha"],[15,"f64"],[8,"Into"],[8,"Cbrt"],[8,"Powf"],[8,"Recip"],[8,"PartialOrd"],[8,"HasBoolMask"],[3,"D65"],[8,"Copy"],[8,"FromScalar"],[3,"FromColorUnclampedMutGuard"],[8,"Neg"],[8,"SubAssign"],[8,"MulAssign"],[8,"RelativeEq"],[8,"SaturatingAdd"],[8,"SaturatingSub"],[4,"Result"],[3,"OutOfBounds"],[3,"TypeId"],[8,"UlpsEq"],[8,"Premultiply"],[8,"StimulusColor"],[8,"ArrayCast"],[8,"Clamp"],[8,"ClampAssign"],[3,"Vec"],[8,"Iterator"],[3,"Iter"],[15,"usize"],[8,"RangeBounds"],[3,"Drain"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[3,"Iter"],[8,"UpperHex"],[8,"LowerHex"],[8,"WithAlpha"],[3,"Linear"],[8,"RgbSpace"],[8,"FromAngle"],[8,"FromIterator"],[15,"u16"],[15,"u8"],[8,"AsRef"],[8,"SliceIndex"],[4,"Option"],[8,"GetHue"],[8,"AsMut"],[8,"IsWithinBounds"],[8,"ExactSizeIterator"],[8,"Lighten"],[8,"LightenAssign"],[8,"Mix"],[8,"MixAssign"],[3,"Srgb"],[8,"DoubleEndedIterator"],[8,"Saturate"],[8,"SaturateAssign"],[8,"SetHue"],[8,"ShiftHue"],[8,"ShiftHueAssign"],[8,"WithHue"],[15,"f32"],[3,"Equations"],[4,"Equation"],[3,"Parameters"],[4,"Parameter"],[8,"FnOnce"],[3,"Packed"],[3,"SliceCastError"],[3,"BoxedSliceCastError"],[3,"VecCastError"],[4,"VecCastErrorKind"],[6,"Lumaa"],[8,"ComponentOrder"],[6,"Rgba"],[3,"Box"],[8,"UintCast"],[8,"FnMut"],[3,"String"],[3,"Any"],[6,"Mat3"],[3,"ConeResponseMatrices"],[4,"Method"],[6,"LinLuma"],[8,"FromColorMut"],[8,"Sized"],[8,"FromColorUnclampedMut"],[15,"str"],[8,"Number"],[3,"Gamma"],[3,"GammaFn"],[3,"F2p2"],[3,"LinearFn"],[8,"MulSub"],[8,"MulAdd"],[3,"LabHueIter"],[3,"LuvHueIter"],[3,"RgbHueIter"],[3,"OklabHueIter"],[8,"UnsignedAngle"],[15,"u128"],[15,"u64"],[3,"La"],[3,"Al"],[15,"i32"],[4,"FromHexError"],[3,"ParseIntError"],[8,"Round"],[8,"Error"],[3,"Abgr"],[3,"Argb"],[3,"Bgra"],[3,"Rgba"],[3,"A"],[3,"B"],[3,"C"],[3,"D50"],[3,"D55"],[3,"D75"],[3,"E"],[3,"F2"],[3,"F7"],[3,"F11"],[3,"D50Degree10"],[3,"D55Degree10"],[3,"D65Degree10"],[3,"D75Degree10"],[8,"ArrayExt"],[8,"NextArray"],[8,"RelativeContrast"],[8,"Darken"],[8,"DarkenAssign"],[8,"Desaturate"],[8,"DesaturateAssign"],[8,"FullRotation"],[8,"HalfRotation"],[8,"IntoAngle"],[8,"BlendWith"],[8,"Compose"],[8,"Blend"],[8,"BoolMask"],[8,"LazySelect"],[8,"Select"],[8,"TryComponentsAs"],[8,"TryComponentsAsMut"],[8,"TryFromComponents"],[8,"TryComponentsInto"],[8,"ArraysAs"],[8,"ArraysAsMut"],[8,"ArraysFrom"],[8,"ArraysInto"],[8,"AsArrays"],[8,"AsArraysMut"],[8,"AsComponents"],[8,"AsComponentsMut"],[8,"AsUints"],[8,"AsUintsMut"],[8,"ComponentsAs"],[8,"ComponentsAsMut"],[8,"ComponentsFrom"],[8,"ComponentsInto"],[8,"FromArrays"],[8,"FromComponents"],[8,"FromUints"],[8,"IntoArrays"],[8,"IntoComponents"],[8,"IntoUints"],[8,"UintsAs"],[8,"UintsAsMut"],[8,"UintsFrom"],[8,"UintsInto"],[8,"AdaptFrom"],[8,"AdaptInto"],[8,"ColorDifference"],[8,"Ciede2000"],[8,"EuclideanDistance"],[8,"Wcag21RelativeContrast"],[8,"HyAb"],[8,"DeltaE"],[8,"ImprovedDeltaE"],[8,"ImprovedCiede2000"],[8,"FromColor"],[8,"FromColorUnclamped"],[8,"IntoColor"],[8,"IntoColorMut"],[8,"IntoColorUnclampedMut"],[8,"TryFromColor"],[8,"TryIntoColor"],[8,"FromLinear"],[8,"IntoLinear"],[8,"IntoScalarArray"],[8,"Powu"],[8,"Primaries"],[8,"IntoStimulus"]],"a":{"colordifference":[3349],"gray":[4330],"grey":[4330],"hsb":[22,3798],"linear":[41,42,43,44,4328,4329,5178,5179],"wcag":[64],"xyy":[94,6087]}}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex}; diff --git a/src-files.js b/src-files.js index 972b97014..537dea6dc 100644 --- a/src-files.js +++ b/src-files.js @@ -1,4 +1,4 @@ var srcIndex = JSON.parse('{\ -"palette":["",[["alpha",[],["alpha.rs"]],["blend",[],["blend.rs","blend_with.rs","compose.rs","equations.rs","pre_alpha.rs"]],["cast",[],["array.rs","as_arrays_traits.rs","as_components_traits.rs","as_uints_traits.rs","from_into_arrays_traits.rs","from_into_components_traits.rs","from_into_uints_traits.rs","packed.rs","uint.rs"]],["convert",[],["from_into_color.rs","from_into_color_mut.rs","from_into_color_unclamped.rs","from_into_color_unclamped_mut.rs","try_from_into_color.rs"]],["encoding",[["srgb",[],["lookup_tables.rs"]]],["gamma.rs","linear.rs","srgb.rs"]],["luma",[],["channels.rs","luma.rs"]],["macros",[],["arithmetics.rs","blend.rs","casting.rs","clamp.rs","color_difference.rs","convert.rs","copy_clone.rs","equality.rs","hue.rs","lazy_select.rs","lighten_saturate.rs","mix.rs","reference_component.rs","simd.rs","struct_of_arrays.rs"]],["okhsl",[],["alpha.rs","properties.rs"]],["okhsv",[],["alpha.rs","properties.rs"]],["okhwb",[],["alpha.rs","properties.rs"]],["oklab",[],["alpha.rs","properties.rs"]],["oklch",[],["alpha.rs","properties.rs"]],["rgb",[],["channels.rs","rgb.rs"]]],["alpha.rs","angle.rs","blend.rs","bool_mask.rs","cast.rs","chromatic_adaptation.rs","color_difference.rs","convert.rs","encoding.rs","hsl.rs","hsluv.rs","hsv.rs","hues.rs","hwb.rs","lab.rs","lch.rs","lchuv.rs","lib.rs","luma.rs","luv.rs","luv_bounds.rs","macros.rs","matrix.rs","named.rs","num.rs","ok_utils.rs","okhsl.rs","okhsv.rs","okhwb.rs","oklab.rs","oklch.rs","relative_contrast.rs","rgb.rs","stimulus.rs","white_point.rs","xyz.rs","yxy.rs"]]\ +"palette":["",[["alpha",[],["alpha.rs"]],["blend",[],["blend.rs","blend_with.rs","compose.rs","equations.rs","pre_alpha.rs"]],["cast",[],["array.rs","as_arrays_traits.rs","as_components_traits.rs","as_uints_traits.rs","from_into_arrays_traits.rs","from_into_components_traits.rs","from_into_uints_traits.rs","packed.rs","uint.rs"]],["convert",[],["from_into_color.rs","from_into_color_mut.rs","from_into_color_unclamped.rs","from_into_color_unclamped_mut.rs","try_from_into_color.rs"]],["encoding",[["srgb",[],["lookup_tables.rs"]]],["gamma.rs","linear.rs","srgb.rs"]],["luma",[],["channels.rs","luma.rs"]],["macros",[],["arithmetics.rs","blend.rs","casting.rs","clamp.rs","color_difference.rs","convert.rs","copy_clone.rs","equality.rs","hue.rs","lazy_select.rs","lighten_saturate.rs","mix.rs","random.rs","reference_component.rs","simd.rs","struct_of_arrays.rs"]],["okhsl",[],["alpha.rs","properties.rs"]],["okhsv",[],["alpha.rs","properties.rs"]],["okhwb",[],["alpha.rs","properties.rs"]],["oklab",[],["alpha.rs","properties.rs"]],["oklch",[],["alpha.rs","properties.rs"]],["rgb",[],["channels.rs","rgb.rs"]]],["alpha.rs","angle.rs","blend.rs","bool_mask.rs","cast.rs","chromatic_adaptation.rs","color_difference.rs","convert.rs","encoding.rs","hsl.rs","hsluv.rs","hsv.rs","hues.rs","hwb.rs","lab.rs","lch.rs","lchuv.rs","lib.rs","luma.rs","luv.rs","luv_bounds.rs","macros.rs","matrix.rs","named.rs","num.rs","ok_utils.rs","okhsl.rs","okhsv.rs","okhwb.rs","oklab.rs","oklch.rs","relative_contrast.rs","rgb.rs","stimulus.rs","white_point.rs","xyz.rs","yxy.rs"]]\ }'); createSrcSidebar(); diff --git a/src/palette/alpha/alpha.rs.html b/src/palette/alpha/alpha.rs.html index a2f04b1cb..a278768ce 100644 --- a/src/palette/alpha/alpha.rs.html +++ b/src/palette/alpha/alpha.rs.html @@ -1363,7 +1363,6 @@ 1363 1364 1365 -1366
use core::{
     fmt,
     iter::FromIterator,
@@ -2718,8 +2717,7 @@
         test_roundtrip!(Struct { value: 0.1 }, "Struct");
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Rgba<Srgb, f32> {
             red: (0.0, 1.0),
             green: (0.0, 1.0),
diff --git a/src/palette/hsl.rs.html b/src/palette/hsl.rs.html
index a7cf853db..364a23dfb 100644
--- a/src/palette/hsl.rs.html
+++ b/src/palette/hsl.rs.html
@@ -696,143 +696,10 @@
 696
 697
 698
-699
-700
-701
-702
-703
-704
-705
-706
-707
-708
-709
-710
-711
-712
-713
-714
-715
-716
-717
-718
-719
-720
-721
-722
-723
-724
-725
-726
-727
-728
-729
-730
-731
-732
-733
-734
-735
-736
-737
-738
-739
-740
-741
-742
-743
-744
-745
-746
-747
-748
-749
-750
-751
-752
-753
-754
-755
-756
-757
-758
-759
-760
-761
-762
-763
-764
-765
-766
-767
-768
-769
-770
-771
-772
-773
-774
-775
-776
-777
-778
-779
-780
-781
-782
-783
-784
-785
-786
-787
-788
-789
-790
-791
-792
-793
-794
-795
-796
-797
-798
-799
-800
-801
-802
-803
-804
-805
-806
-807
-808
-809
-810
-811
-812
-813
-814
-815
-816
-817
-818
-819
 
//! Types for the HSL color space.
 
 use core::{any::TypeId, marker::PhantomData, ops::Not};
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
-#[cfg(feature = "random")]
-use crate::num::{Cbrt, Powi, Sqrt};
-
 use crate::{
     angle::{FromAngle, RealAngle},
     bool_mask::{BitOps, BoolMask, HasBoolMask, LazySelect, Select},
@@ -1271,29 +1138,7 @@
     }
 }
 
-impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsl<S, T> {
-    fn from(components: (H, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T> From<Hsl<S, T>> for (RgbHue<T>, T, T) {
-    fn from(color: Hsl<S, T>) -> (RgbHue<T>, T, T) {
-        color.into_components()
-    }
-}
-
-impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsl<S, T>, A> {
-    fn from(components: (H, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T, A> From<Alpha<Hsl<S, T>, A>> for (RgbHue<T>, T, T, A) {
-    fn from(color: Alpha<Hsl<S, T>, A>) -> (RgbHue<T>, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Hsl<S> as (H, T, T), RgbHue);
 
 impl_is_within_bounds! {
     Hsl<S> {
@@ -1366,101 +1211,15 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<S, T> Distribution<Hsl<S, T>> for Standard
-where
-    T: Real + One + Cbrt + Sqrt + Arithmetics + PartialCmp + Clone,
-    T::Mask: LazySelect<T> + Clone,
-    Standard: Distribution<T> + Distribution<RgbHue<T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsl<S, T> {
-        crate::random_sampling::sample_hsl(rng.gen::<RgbHue<T>>(), rng.gen(), rng.gen())
-    }
-}
-
-/// Sample HSL colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformHsl<S, T>
-where
-    T: SampleUniform,
-{
-    hue: crate::hues::UniformRgbHue<T>,
-    u1: Uniform<T>,
-    u2: Uniform<T>,
-    space: PhantomData<S>,
-}
-
-#[cfg(feature = "random")]
-impl<S, T> SampleUniform for Hsl<S, T>
-where
-    T: Real + One + Cbrt + Sqrt + Powi + Arithmetics + PartialCmp + Clone + SampleUniform,
-    T::Mask: LazySelect<T> + Clone,
-    RgbHue<T>: SampleBorrow<RgbHue<T>>,
-    crate::hues::UniformRgbHue<T>: UniformSampler<X = RgbHue<T>>,
-{
-    type Sampler = UniformHsl<S, T>;
-}
-
-#[cfg(feature = "random")]
-impl<S, T> UniformSampler for UniformHsl<S, T>
-where
-    T: Real + One + Cbrt + Sqrt + Powi + Arithmetics + PartialCmp + Clone + SampleUniform,
-    T::Mask: LazySelect<T> + Clone,
-    RgbHue<T>: SampleBorrow<RgbHue<T>>,
-    crate::hues::UniformRgbHue<T>: UniformSampler<X = RgbHue<T>>,
-{
-    type X = Hsl<S, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        use crate::random_sampling::invert_hsl_sample;
-
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min) = invert_hsl_sample(low.saturation, low.lightness);
-        let (r1_max, r2_max) = invert_hsl_sample(high.saturation, high.lightness);
-
-        UniformHsl {
-            hue: crate::hues::UniformRgbHue::new(low.hue, high.hue),
-            u1: Uniform::new::<_, T>(r1_min, r1_max),
-            u2: Uniform::new::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        use crate::random_sampling::invert_hsl_sample;
-
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min) = invert_hsl_sample(low.saturation, low.lightness);
-        let (r1_max, r2_max) = invert_hsl_sample(high.saturation, high.lightness);
-
-        UniformHsl {
-            hue: crate::hues::UniformRgbHue::new_inclusive(low.hue, high.hue),
-            u1: Uniform::new_inclusive::<_, T>(r1_min, r1_max),
-            u2: Uniform::new_inclusive::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsl<S, T> {
-        crate::random_sampling::sample_hsl(
-            self.hue.sample(rng),
-            self.u1.sample(rng),
-            self.u2.sample(rng),
-        )
+impl_rand_traits_hsl_bicone!(
+    UniformHsl,
+    Hsl<S> {
+        hue: UniformRgbHue => RgbHue,
+        height: lightness,
+        radius: saturation
     }
-}
+    phantom: standard: PhantomData<S>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<S, T> bytemuck::Zeroable for Hsl<S, T> where T: bytemuck::Zeroable {}
@@ -1591,8 +1350,7 @@
         assert_eq!(deserialized, Hsl::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Hsl<crate::encoding::Srgb, f32> as crate::rgb::Rgb {
             red: (0.0, 1.0),
             green: (0.0, 1.0),
diff --git a/src/palette/hsluv.rs.html b/src/palette/hsluv.rs.html
index 5d97f66c6..641b37281 100644
--- a/src/palette/hsluv.rs.html
+++ b/src/palette/hsluv.rs.html
@@ -373,142 +373,10 @@
 373
 374
 375
-376
-377
-378
-379
-380
-381
-382
-383
-384
-385
-386
-387
-388
-389
-390
-391
-392
-393
-394
-395
-396
-397
-398
-399
-400
-401
-402
-403
-404
-405
-406
-407
-408
-409
-410
-411
-412
-413
-414
-415
-416
-417
-418
-419
-420
-421
-422
-423
-424
-425
-426
-427
-428
-429
-430
-431
-432
-433
-434
-435
-436
-437
-438
-439
-440
-441
-442
-443
-444
-445
-446
-447
-448
-449
-450
-451
-452
-453
-454
-455
-456
-457
-458
-459
-460
-461
-462
-463
-464
-465
-466
-467
-468
-469
-470
-471
-472
-473
-474
-475
-476
-477
-478
-479
-480
-481
-482
-483
-484
-485
-486
-487
-488
-489
-490
-491
-492
-493
-494
-495
 

//! Types for the HSLuv color space.
 
 use core::marker::PhantomData;
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
-#[cfg(feature = "random")]
-use crate::num::{Cbrt, One, Sqrt};
-
 use crate::{
     angle::RealAngle,
     bool_mask::{HasBoolMask, LazySelect},
@@ -677,29 +545,7 @@
     }
 }
 
-impl<Wp, T, H: Into<LuvHue<T>>> From<(H, T, T)> for Hsluv<Wp, T> {
-    fn from(components: (H, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Hsluv<Wp, T>> for (LuvHue<T>, T, T) {
-    fn from(color: Hsluv<Wp, T>) -> (LuvHue<T>, T, T) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, H: Into<LuvHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsluv<Wp, T>, A> {
-    fn from(components: (H, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Hsluv<Wp, T>, A>> for (LuvHue<T>, T, T, A) {
-    fn from(color: Alpha<Hsluv<Wp, T>, A>) -> (LuvHue<T>, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Hsluv<Wp> as (H, T, T), LuvHue);
 
 impl_is_within_bounds! {
     Hsluv<Wp> {
@@ -767,101 +613,15 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Hsluv<Wp, T>> for Standard
-where
-    T: Real + One + Cbrt + Sqrt + Arithmetics + PartialCmp + Clone,
-    T::Mask: LazySelect<T> + Clone,
-    Standard: Distribution<T> + Distribution<LuvHue<T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsluv<Wp, T> {
-        crate::random_sampling::sample_hsluv(rng.gen::<LuvHue<T>>(), rng.gen(), rng.gen())
-    }
-}
-
-/// Sample HSLuv colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformHsluv<Wp, T>
-where
-    T: SampleUniform,
-{
-    hue: crate::hues::UniformLuvHue<T>,
-    u1: Uniform<T>,
-    u2: Uniform<T>,
-    space: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Hsluv<Wp, T>
-where
-    T: Real + One + Cbrt + Sqrt + Powi + Arithmetics + PartialCmp + Clone + SampleUniform,
-    T::Mask: LazySelect<T> + Clone,
-    LuvHue<T>: SampleBorrow<LuvHue<T>>,
-    crate::hues::UniformLuvHue<T>: UniformSampler<X = LuvHue<T>>,
-{
-    type Sampler = UniformHsluv<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformHsluv<Wp, T>
-where
-    T: Real + One + Cbrt + Sqrt + Powi + Arithmetics + PartialCmp + Clone + SampleUniform,
-    T::Mask: LazySelect<T> + Clone,
-    LuvHue<T>: SampleBorrow<LuvHue<T>>,
-    crate::hues::UniformLuvHue<T>: UniformSampler<X = LuvHue<T>>,
-{
-    type X = Hsluv<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        use crate::random_sampling::invert_hsluv_sample;
-
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min): (T, T) = invert_hsluv_sample(low.saturation, low.l);
-        let (r1_max, r2_max): (T, T) = invert_hsluv_sample(high.saturation, high.l);
-
-        UniformHsluv {
-            hue: crate::hues::UniformLuvHue::new(low.hue, high.hue),
-            u1: Uniform::new::<_, T>(r1_min, r1_max),
-            u2: Uniform::new::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        use crate::random_sampling::invert_hsluv_sample;
-
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min): (T, T) = invert_hsluv_sample(low.saturation, low.l);
-        let (r1_max, r2_max): (T, T) = invert_hsluv_sample(high.saturation, high.l);
-
-        UniformHsluv {
-            hue: crate::hues::UniformLuvHue::new_inclusive(low.hue, high.hue),
-            u1: Uniform::new_inclusive::<_, T>(r1_min, r1_max),
-            u2: Uniform::new_inclusive::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsluv<Wp, T> {
-        crate::random_sampling::sample_hsluv(
-            self.hue.sample(rng),
-            self.u1.sample(rng),
-            self.u2.sample(rng),
-        )
+impl_rand_traits_hsl_bicone!(
+    UniformHsluv,
+    Hsluv<Wp> {
+        hue: UniformLuvHue => LuvHue,
+        height: l => [|l: T| l * T::from_f64(100.0), |l: T| l / T::from_f64(100.0)],
+        radius: saturation => [|s: T| s * T::from_f64(100.0), |s: T| s / T::from_f64(100.0)]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Hsluv<Wp, T> where T: bytemuck::Zeroable {}
diff --git a/src/palette/hsv.rs.html b/src/palette/hsv.rs.html
index 84e6ed623..148925cb9 100644
--- a/src/palette/hsv.rs.html
+++ b/src/palette/hsv.rs.html
@@ -666,136 +666,10 @@
 666
 667
 668
-669
-670
-671
-672
-673
-674
-675
-676
-677
-678
-679
-680
-681
-682
-683
-684
-685
-686
-687
-688
-689
-690
-691
-692
-693
-694
-695
-696
-697
-698
-699
-700
-701
-702
-703
-704
-705
-706
-707
-708
-709
-710
-711
-712
-713
-714
-715
-716
-717
-718
-719
-720
-721
-722
-723
-724
-725
-726
-727
-728
-729
-730
-731
-732
-733
-734
-735
-736
-737
-738
-739
-740
-741
-742
-743
-744
-745
-746
-747
-748
-749
-750
-751
-752
-753
-754
-755
-756
-757
-758
-759
-760
-761
-762
-763
-764
-765
-766
-767
-768
-769
-770
-771
-772
-773
-774
-775
-776
-777
-778
-779
-780
-781
-782
 
//! Types for the HSV color space.
 
 use core::{any::TypeId, marker::PhantomData};
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
-#[cfg(feature = "random")]
-use crate::num::{Cbrt, Powi, Sqrt};
-
 use crate::{
     angle::{FromAngle, RealAngle},
     bool_mask::{BitOps, BoolMask, HasBoolMask, LazySelect, Select},
@@ -1245,29 +1119,7 @@
     }
 }
 
-impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hsv<S, T> {
-    fn from(components: (H, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T> From<Hsv<S, T>> for (RgbHue<T>, T, T) {
-    fn from(color: Hsv<S, T>) -> (RgbHue<T>, T, T) {
-        color.into_components()
-    }
-}
-
-impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hsv<S, T>, A> {
-    fn from(components: (H, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T, A> From<Alpha<Hsv<S, T>, A>> for (RgbHue<T>, T, T, A) {
-    fn from(color: Alpha<Hsv<S, T>, A>) -> (RgbHue<T>, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Hsv<S> as (H, T, T), RgbHue);
 
 impl_is_within_bounds! {
     Hsv<S> {
@@ -1336,94 +1188,15 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<S, T> Distribution<Hsv<S, T>> for Standard
-where
-    T: Cbrt + Sqrt,
-    Standard: Distribution<T> + Distribution<RgbHue<T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsv<S, T> {
-        crate::random_sampling::sample_hsv(rng.gen::<RgbHue<T>>(), rng.gen(), rng.gen())
-    }
-}
-
-/// Sample HSV colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformHsv<S, T>
-where
-    T: SampleUniform,
-{
-    hue: crate::hues::UniformRgbHue<T>,
-    u1: Uniform<T>,
-    u2: Uniform<T>,
-    space: PhantomData<S>,
-}
-
-#[cfg(feature = "random")]
-impl<S, T> SampleUniform for Hsv<S, T>
-where
-    T: Cbrt + Sqrt + Powi + Clone + SampleUniform,
-    RgbHue<T>: SampleBorrow<RgbHue<T>>,
-    crate::hues::UniformRgbHue<T>: UniformSampler<X = RgbHue<T>>,
-{
-    type Sampler = UniformHsv<S, T>;
-}
-
-#[cfg(feature = "random")]
-impl<S, T> UniformSampler for UniformHsv<S, T>
-where
-    T: Cbrt + Sqrt + Powi + Clone + SampleUniform,
-    RgbHue<T>: SampleBorrow<RgbHue<T>>,
-    crate::hues::UniformRgbHue<T>: UniformSampler<X = RgbHue<T>>,
-{
-    type X = Hsv<S, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min) = (low.value.powi(3), low.saturation.powi(2));
-        let (r1_max, r2_max) = (high.value.powi(3), high.saturation.powi(2));
-
-        UniformHsv {
-            hue: crate::hues::UniformRgbHue::new(low.hue, high.hue),
-            u1: Uniform::new::<_, T>(r1_min, r1_max),
-            u2: Uniform::new::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        let (r1_min, r2_min) = (low.value.powi(3), low.saturation.powi(2));
-        let (r1_max, r2_max) = (high.value.powi(3), high.saturation.powi(2));
-
-        UniformHsv {
-            hue: crate::hues::UniformRgbHue::new_inclusive(low.hue, high.hue),
-            u1: Uniform::new_inclusive::<_, T>(r1_min, r1_max),
-            u2: Uniform::new_inclusive::<_, T>(r2_min, r2_max),
-            space: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hsv<S, T> {
-        crate::random_sampling::sample_hsv(
-            self.hue.sample(rng),
-            self.u1.sample(rng),
-            self.u2.sample(rng),
-        )
+impl_rand_traits_hsv_cone!(
+    UniformHsv,
+    Hsv<S> {
+        hue: UniformRgbHue => RgbHue,
+        height: value,
+        radius: saturation
     }
-}
+    phantom: standard: PhantomData<S>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<S, T> bytemuck::Zeroable for Hsv<S, T> where T: bytemuck::Zeroable {}
@@ -1551,8 +1324,7 @@
         assert_eq!(deserialized, Hsv::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Hsv<crate::encoding::Srgb, f32> as crate::rgb::Rgb {
             red: (0.0, 1.0),
             green: (0.0, 1.0),
diff --git a/src/palette/hwb.rs.html b/src/palette/hwb.rs.html
index beb220d36..4ea07043f 100644
--- a/src/palette/hwb.rs.html
+++ b/src/palette/hwb.rs.html
@@ -488,134 +488,12 @@
 488
 489
 490
-491
-492
-493
-494
-495
-496
-497
-498
-499
-500
-501
-502
-503
-504
-505
-506
-507
-508
-509
-510
-511
-512
-513
-514
-515
-516
-517
-518
-519
-520
-521
-522
-523
-524
-525
-526
-527
-528
-529
-530
-531
-532
-533
-534
-535
-536
-537
-538
-539
-540
-541
-542
-543
-544
-545
-546
-547
-548
-549
-550
-551
-552
-553
-554
-555
-556
-557
-558
-559
-560
-561
-562
-563
-564
-565
-566
-567
-568
-569
-570
-571
-572
-573
-574
-575
-576
-577
-578
-579
-580
-581
-582
-583
-584
-585
-586
-587
-588
-589
-590
-591
-592
-593
-594
-595
-596
-597
-598
-599
-600
-601
-602
-603
 
//! Types for the HWB color space.
 
 use core::{any::TypeId, marker::PhantomData};
 
 #[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
-#[cfg(feature = "random")]
-use crate::num::MinMax;
+use crate::hsv::UniformHsv;
 
 use crate::{
     angle::FromAngle,
@@ -899,30 +777,7 @@
     }
 }
 
-impl<S, T, H: Into<RgbHue<T>>> From<(H, T, T)> for Hwb<S, T> {
-    fn from(components: (H, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T> From<Hwb<S, T>> for (RgbHue<T>, T, T) {
-    fn from(color: Hwb<S, T>) -> (RgbHue<T>, T, T) {
-        color.into_components()
-    }
-}
-
-impl<S, T, H: Into<RgbHue<T>>, A> From<(H, T, T, A)> for Alpha<Hwb<S, T>, A> {
-    fn from(components: (H, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T, A> From<Alpha<Hwb<S, T>, A>> for (RgbHue<T>, T, T, A) {
-    fn from(color: Alpha<Hwb<S, T>, A>) -> (RgbHue<T>, T, T, A) {
-        color.into_components()
-    }
-}
-
+impl_tuple_conversion_hue!(Hwb<S> as (H, T, T), RgbHue);
 impl_is_within_bounds_hwb!(Hwb<S> where T: Stimulus);
 impl_clamp_hwb!(Hwb<S> phantom: standard where T: Stimulus);
 
@@ -980,96 +835,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<S, T> Distribution<Hwb<S, T>> for Standard
-where
-    Standard: Distribution<Hsv<S, T>>,
-    Hwb<S, T>: FromColorUnclamped<Hsv<S, T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hwb<S, T> {
-        Hwb::from_color_unclamped(rng.gen::<Hsv<S, T>>())
+impl_rand_traits_hwb_cone!(
+    UniformHwb,
+    Hwb<S>,
+    UniformHsv,
+    Hsv {
+        height: value,
+        radius: saturation
     }
-}
-
-/// Sample HWB colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformHwb<S, T>
-where
-    T: SampleUniform,
-{
-    sampler: crate::hsv::UniformHsv<S, T>,
-    space: PhantomData<S>,
-}
-
-#[cfg(feature = "random")]
-impl<S, T> SampleUniform for Hwb<S, T>
-where
-    T: MinMax + Clone + SampleUniform,
-    Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + SampleBorrow<Hsv<S, T>>,
-    Hwb<S, T>: FromColorUnclamped<Hsv<S, T>>,
-    crate::hsv::UniformHsv<S, T>: UniformSampler<X = Hsv<S, T>>,
-{
-    type Sampler = UniformHwb<S, T>;
-}
-
-#[cfg(feature = "random")]
-impl<S, T> UniformSampler for UniformHwb<S, T>
-where
-    T: MinMax + Clone + SampleUniform,
-    Hsv<S, T>: FromColorUnclamped<Hwb<S, T>> + SampleBorrow<Hsv<S, T>>,
-    Hwb<S, T>: FromColorUnclamped<Hsv<S, T>>,
-    crate::hsv::UniformHsv<S, T>: UniformSampler<X = Hsv<S, T>>,
-{
-    type X = Hwb<S, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low_input = Hsv::from_color_unclamped(low_b.borrow().clone());
-        let high_input = Hsv::from_color_unclamped(high_b.borrow().clone());
-
-        let (low_saturation, high_saturation) = low_input.saturation.min_max(high_input.saturation);
-        let (low_value, high_value) = low_input.value.min_max(high_input.value);
-
-        let low = Hsv::new(low_input.hue, low_saturation, low_value);
-        let high = Hsv::new(high_input.hue, high_saturation, high_value);
-
-        let sampler = crate::hsv::UniformHsv::<S, _>::new(low, high);
-
-        UniformHwb {
-            sampler,
-            space: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low_input = Hsv::from_color_unclamped(low_b.borrow().clone());
-        let high_input = Hsv::from_color_unclamped(high_b.borrow().clone());
-
-        let (low_saturation, high_saturation) = low_input.saturation.min_max(high_input.saturation);
-        let (low_value, high_value) = low_input.value.min_max(high_input.value);
-
-        let low = Hsv::new(low_input.hue, low_saturation, low_value);
-        let high = Hsv::new(high_input.hue, high_saturation, high_value);
-
-        let sampler = crate::hsv::UniformHsv::<S, _>::new_inclusive(low, high);
-
-        UniformHwb {
-            sampler,
-            space: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Hwb<S, T> {
-        Hwb::from_color_unclamped(self.sampler.sample(rng))
-    }
-}
+    phantom: standard: PhantomData<S>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<S, T> bytemuck::Zeroable for Hwb<S, T> where T: bytemuck::Zeroable {}
@@ -1193,8 +968,7 @@
         assert_eq!(deserialized, Hwb::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Hwb<crate::encoding::Srgb, f32> as crate::rgb::Rgb {
             red: (0.0, 1.0),
             green: (0.0, 1.0),
diff --git a/src/palette/lab.rs.html b/src/palette/lab.rs.html
index 0066eec05..e34b1ee7e 100644
--- a/src/palette/lab.rs.html
+++ b/src/palette/lab.rs.html
@@ -484,116 +484,6 @@
 484
 485
 486
-487
-488
-489
-490
-491
-492
-493
-494
-495
-496
-497
-498
-499
-500
-501
-502
-503
-504
-505
-506
-507
-508
-509
-510
-511
-512
-513
-514
-515
-516
-517
-518
-519
-520
-521
-522
-523
-524
-525
-526
-527
-528
-529
-530
-531
-532
-533
-534
-535
-536
-537
-538
-539
-540
-541
-542
-543
-544
-545
-546
-547
-548
-549
-550
-551
-552
-553
-554
-555
-556
-557
-558
-559
-560
-561
-562
-563
-564
-565
-566
-567
-568
-569
-570
-571
-572
-573
-574
-575
-576
-577
-578
-579
-580
-581
-582
-583
-584
-585
-586
-587
-588
-589
-590
-591
-592
-593
-594
-595
-596
 
//! Types for the CIE L\*a\*b\* (CIELAB) color space.
 
 use core::{
@@ -601,18 +491,6 @@
     ops::{Add, BitAnd, BitOr, Mul, Neg},
 };
 
-#[cfg(feature = "random")]
-use core::ops::Sub;
-
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     angle::RealAngle,
     bool_mask::{HasBoolMask, LazySelect},
@@ -814,29 +692,7 @@
     }
 }
 
-impl<Wp, T> From<(T, T, T)> for Lab<Wp, T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Lab<Wp, T>> for (T, T, T) {
-    fn from(color: Lab<Wp, T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Lab<Wp, T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Lab<Wp, T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Lab<Wp, T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Lab<Wp> as (T, T, T));
 
 impl_is_within_bounds! {
     Lab<Wp> {
@@ -997,91 +853,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Lab<Wp, T>> for Standard
-where
-    T: Real + Sub<Output = T> + Mul<Output = T>,
-    Standard: Distribution<T>,
-{
-    // `a` and `b` both range from (-128.0, 127.0)
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lab<Wp, T> {
-        Lab {
-            l: rng.gen() * T::from_f64(100.0),
-            a: rng.gen() * T::from_f64(255.0) - T::from_f64(128.0),
-            b: rng.gen() * T::from_f64(255.0) - T::from_f64(128.0),
-            white_point: PhantomData,
-        }
-    }
-}
-
-/// Sample CIE L\*a\*b\* (CIELAB) colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformLab<Wp, T>
-where
-    T: SampleUniform,
-{
-    l: Uniform<T>,
-    a: Uniform<T>,
-    b: Uniform<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Lab<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type Sampler = UniformLab<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformLab<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type X = Lab<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLab {
-            l: Uniform::new::<_, T>(low.l, high.l),
-            a: Uniform::new::<_, T>(low.a, high.a),
-            b: Uniform::new::<_, T>(low.b, high.b),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLab {
-            l: Uniform::new_inclusive::<_, T>(low.l, high.l),
-            a: Uniform::new_inclusive::<_, T>(low.a, high.a),
-            b: Uniform::new_inclusive::<_, T>(low.b, high.b),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lab<Wp, T> {
-        Lab {
-            l: self.l.sample(rng),
-            a: self.a.sample(rng),
-            b: self.b.sample(rng),
-            white_point: PhantomData,
-        }
+impl_rand_traits_cartesian!(
+    UniformLab,
+    Lab<Wp> {
+        l => [|x| x * T::from_f64(100.0)],
+        a => [|x| x * T::from_f64(255.0) - T::from_f64(128.0)],
+        b => [|x| x * T::from_f64(255.0) - T::from_f64(128.0)]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+    where T: Real + core::ops::Sub<Output = T> + core::ops::Mul<Output = T>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Lab<Wp, T> where T: bytemuck::Zeroable {}
@@ -1179,8 +960,7 @@
         assert_eq!(deserialized, Lab::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Lab<D65, f32> {
             l: (0.0, 100.0),
             a: (-128.0, 127.0),
diff --git a/src/palette/lch.rs.html b/src/palette/lch.rs.html
index 9dbc50e63..1c2e2bdee 100644
--- a/src/palette/lch.rs.html
+++ b/src/palette/lch.rs.html
@@ -490,122 +490,6 @@
 490
 491
 492
-493
-494
-495
-496
-497
-498
-499
-500
-501
-502
-503
-504
-505
-506
-507
-508
-509
-510
-511
-512
-513
-514
-515
-516
-517
-518
-519
-520
-521
-522
-523
-524
-525
-526
-527
-528
-529
-530
-531
-532
-533
-534
-535
-536
-537
-538
-539
-540
-541
-542
-543
-544
-545
-546
-547
-548
-549
-550
-551
-552
-553
-554
-555
-556
-557
-558
-559
-560
-561
-562
-563
-564
-565
-566
-567
-568
-569
-570
-571
-572
-573
-574
-575
-576
-577
-578
-579
-580
-581
-582
-583
-584
-585
-586
-587
-588
-589
-590
-591
-592
-593
-594
-595
-596
-597
-598
-599
-600
-601
-602
-603
-604
-605
-606
-607
-608
 
//! Types for the CIE L\*C\*h° color space.
 
 use core::{
@@ -613,15 +497,6 @@
     ops::{BitAnd, BitOr},
 };
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     angle::RealAngle,
     bool_mask::{HasBoolMask, LazySelect},
@@ -789,29 +664,7 @@
     }
 }
 
-impl<Wp, T, H: Into<LabHue<T>>> From<(T, T, H)> for Lch<Wp, T> {
-    fn from(components: (T, T, H)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Lch<Wp, T>> for (T, T, LabHue<T>) {
-    fn from(color: Lch<Wp, T>) -> (T, T, LabHue<T>) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, H: Into<LabHue<T>>, A> From<(T, T, H, A)> for Alpha<Lch<Wp, T>, A> {
-    fn from(components: (T, T, H, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Lch<Wp, T>, A>> for (T, T, LabHue<T>, A) {
-    fn from(color: Alpha<Lch<Wp, T>, A>) -> (T, T, LabHue<T>, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Lch<Wp> as (T, T, H), LabHue);
 
 impl_is_within_bounds! {
     Lch<Wp> {
@@ -956,100 +809,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Lch<Wp, T>> for Standard
-where
-    T: Real + Zero + Sqrt + core::ops::Mul<Output = T>,
-    Standard: Distribution<T> + Distribution<LabHue<T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lch<Wp, T> {
-        Lch {
-            l: rng.gen::<T>() * Lch::<Wp, T>::max_l(),
-            chroma: rng.gen::<T>().sqrt() * Lch::<Wp, T>::max_chroma(),
-            hue: rng.gen::<LabHue<T>>(),
-            white_point: PhantomData,
-        }
-    }
-}
-
-/// Sample CIE L\*C\*h° colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformLch<Wp, T>
-where
-    T: SampleUniform,
-{
-    l: Uniform<T>,
-    chroma: Uniform<T>,
-    hue: crate::hues::UniformLabHue<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Lch<Wp, T>
-where
-    T: Sqrt + core::ops::Mul<Output = T> + Clone + SampleUniform,
-    LabHue<T>: SampleBorrow<LabHue<T>>,
-    crate::hues::UniformLabHue<T>: UniformSampler<X = LabHue<T>>,
-{
-    type Sampler = UniformLch<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformLch<Wp, T>
-where
-    T: Sqrt + core::ops::Mul<Output = T> + Clone + SampleUniform,
-    LabHue<T>: SampleBorrow<LabHue<T>>,
-    crate::hues::UniformLabHue<T>: UniformSampler<X = LabHue<T>>,
-{
-    type X = Lch<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLch {
-            l: Uniform::new::<_, T>(low.l, high.l),
-            chroma: Uniform::new::<_, T>(
-                low.chroma.clone() * low.chroma,
-                high.chroma.clone() * high.chroma,
-            ),
-            hue: crate::hues::UniformLabHue::new(low.hue, high.hue),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLch {
-            l: Uniform::new_inclusive::<_, T>(low.l, high.l),
-            chroma: Uniform::new_inclusive::<_, T>(
-                low.chroma.clone() * low.chroma,
-                high.chroma.clone() * high.chroma,
-            ),
-            hue: crate::hues::UniformLabHue::new_inclusive(low.hue, high.hue),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lch<Wp, T> {
-        Lch {
-            l: self.l.sample(rng),
-            chroma: self.chroma.sample(rng).sqrt(),
-            hue: self.hue.sample(rng),
-            white_point: PhantomData,
-        }
+impl_rand_traits_cylinder!(
+    UniformLch,
+    Lch<Wp> {
+        hue: UniformLabHue => LabHue,
+        height: l => [|l: T| l * Lch::<Wp, T>::max_l()],
+        radius: chroma => [|chroma| chroma *  Lch::<Wp, T>::max_chroma()]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+    where T: Real + Zero + core::ops::Mul<Output = T>,
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Lch<Wp, T> where T: bytemuck::Zeroable {}
@@ -1203,8 +972,7 @@
         assert_eq!(deserialized, Lch::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Lch<D65, f32> as crate::Lab {
             l: (0.0, 100.0),
             a: (-89.0, 89.0),
diff --git a/src/palette/lchuv.rs.html b/src/palette/lchuv.rs.html
index 789859012..8f8353a88 100644
--- a/src/palette/lchuv.rs.html
+++ b/src/palette/lchuv.rs.html
@@ -361,141 +361,10 @@
 361
 362
 363
-364
-365
-366
-367
-368
-369
-370
-371
-372
-373
-374
-375
-376
-377
-378
-379
-380
-381
-382
-383
-384
-385
-386
-387
-388
-389
-390
-391
-392
-393
-394
-395
-396
-397
-398
-399
-400
-401
-402
-403
-404
-405
-406
-407
-408
-409
-410
-411
-412
-413
-414
-415
-416
-417
-418
-419
-420
-421
-422
-423
-424
-425
-426
-427
-428
-429
-430
-431
-432
-433
-434
-435
-436
-437
-438
-439
-440
-441
-442
-443
-444
-445
-446
-447
-448
-449
-450
-451
-452
-453
-454
-455
-456
-457
-458
-459
-460
-461
-462
-463
-464
-465
-466
-467
-468
-469
-470
-471
-472
-473
-474
-475
-476
-477
-478
-479
-480
-481
-482
 
//! Types for the CIE L\*C\*uv h°uv color space.
 
 use core::{marker::PhantomData, ops::Mul};
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
-#[cfg(feature = "random")]
-use crate::num::Sqrt;
-
 use crate::{
     angle::RealAngle,
     bool_mask::{HasBoolMask, LazySelect},
@@ -674,29 +543,7 @@
     }
 }
 
-impl<Wp, T, H: Into<LuvHue<T>>> From<(T, T, H)> for Lchuv<Wp, T> {
-    fn from(components: (T, T, H)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Lchuv<Wp, T>> for (T, T, LuvHue<T>) {
-    fn from(color: Lchuv<Wp, T>) -> (T, T, LuvHue<T>) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, H: Into<LuvHue<T>>, A> From<(T, T, H, A)> for Alpha<Lchuv<Wp, T>, A> {
-    fn from(components: (T, T, H, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Lchuv<Wp, T>, A>> for (T, T, LuvHue<T>, A) {
-    fn from(color: Alpha<Lchuv<Wp, T>, A>) -> (T, T, LuvHue<T>, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Lchuv<Wp> as (T, T, H), LuvHue);
 
 impl_is_within_bounds! {
     Lchuv<Wp> {
@@ -764,100 +611,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Lchuv<Wp, T>> for Standard
-where
-    T: Real + Zero + Sqrt + core::ops::Mul<Output = T>,
-    Standard: Distribution<T> + Distribution<LuvHue<T>>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lchuv<Wp, T> {
-        Lchuv {
-            l: rng.gen::<T>() * Lchuv::<Wp, T>::max_l(),
-            chroma: rng.gen::<T>().sqrt() * Lchuv::<Wp, T>::max_chroma(),
-            hue: rng.gen::<LuvHue<T>>(),
-            white_point: PhantomData,
-        }
-    }
-}
-
-/// Sample CIE L\*C\*uv h°uv colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformLchuv<Wp, T>
-where
-    T: SampleUniform,
-{
-    l: Uniform<T>,
-    chroma: Uniform<T>,
-    hue: crate::hues::UniformLuvHue<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Lchuv<Wp, T>
-where
-    T: Sqrt + Mul<Output = T> + Clone + SampleUniform,
-    LuvHue<T>: SampleBorrow<LuvHue<T>>,
-    crate::hues::UniformLuvHue<T>: UniformSampler<X = LuvHue<T>>,
-{
-    type Sampler = UniformLchuv<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformLchuv<Wp, T>
-where
-    T: Sqrt + Mul<Output = T> + Clone + SampleUniform,
-    LuvHue<T>: SampleBorrow<LuvHue<T>>,
-    crate::hues::UniformLuvHue<T>: UniformSampler<X = LuvHue<T>>,
-{
-    type X = Lchuv<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLchuv {
-            l: Uniform::new::<_, T>(low.l, high.l),
-            chroma: Uniform::new::<_, T>(
-                low.chroma.clone() * low.chroma,
-                high.chroma.clone() * high.chroma,
-            ),
-            hue: crate::hues::UniformLuvHue::new(low.hue, high.hue),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow().clone();
-        let high = high_b.borrow().clone();
-
-        UniformLchuv {
-            l: Uniform::new_inclusive::<_, T>(low.l, high.l),
-            chroma: Uniform::new_inclusive::<_, T>(
-                low.chroma.clone() * low.chroma,
-                high.chroma.clone() * high.chroma,
-            ),
-            hue: crate::hues::UniformLuvHue::new_inclusive(low.hue, high.hue),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Lchuv<Wp, T> {
-        Lchuv {
-            l: self.l.sample(rng),
-            chroma: self.chroma.sample(rng).sqrt(),
-            hue: self.hue.sample(rng),
-            white_point: PhantomData,
-        }
+impl_rand_traits_cylinder!(
+    UniformLchuv,
+    Lchuv<Wp> {
+        hue: UniformLuvHue => LuvHue,
+        height: l => [|l: T| l * Lchuv::<Wp, T>::max_l()],
+        radius: chroma => [|chroma| chroma *  Lchuv::<Wp, T>::max_chroma()]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+    where T: Real + Zero + core::ops::Mul<Output = T>,
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Lchuv<Wp, T> where T: bytemuck::Zeroable {}
@@ -951,8 +714,7 @@
         assert_eq!(deserialized, Lchuv::new(70.0, 80.0, 130.0));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Lchuv<D65, f32> as crate::Luv {
             l: (0.0, 100.0),
             u: (-80.0, 80.0),
diff --git a/src/palette/luma/luma.rs.html b/src/palette/luma/luma.rs.html
index 349cd0aa9..1e8074314 100644
--- a/src/palette/luma/luma.rs.html
+++ b/src/palette/luma/luma.rs.html
@@ -936,109 +936,6 @@
 936
 937
 938
-939
-940
-941
-942
-943
-944
-945
-946
-947
-948
-949
-950
-951
-952
-953
-954
-955
-956
-957
-958
-959
-960
-961
-962
-963
-964
-965
-966
-967
-968
-969
-970
-971
-972
-973
-974
-975
-976
-977
-978
-979
-980
-981
-982
-983
-984
-985
-986
-987
-988
-989
-990
-991
-992
-993
-994
-995
-996
-997
-998
-999
-1000
-1001
-1002
-1003
-1004
-1005
-1006
-1007
-1008
-1009
-1010
-1011
-1012
-1013
-1014
-1015
-1016
-1017
-1018
-1019
-1020
-1021
-1022
-1023
-1024
-1025
-1026
-1027
-1028
-1029
-1030
-1031
-1032
-1033
-1034
-1035
-1036
-1037
-1038
-1039
-1040
-1041
 
use core::{
     any::TypeId,
     convert::TryInto,
@@ -1047,15 +944,6 @@
     ops::{Add, Div},
 };
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     bool_mask::{HasBoolMask, LazySelect},
     cast::{ComponentOrder, Packed, UintCast},
@@ -1605,29 +1493,7 @@
     }
 }
 
-impl<S, T> From<(T,)> for Luma<S, T> {
-    fn from(components: (T,)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T> From<Luma<S, T>> for (T,) {
-    fn from(color: Luma<S, T>) -> (T,) {
-        color.into_components()
-    }
-}
-
-impl<S, T, A> From<(T, A)> for Alpha<Luma<S, T>, A> {
-    fn from(components: (T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T, A> From<Alpha<Luma<S, T>, A>> for (T, A) {
-    fn from(color: Alpha<Luma<S, T>, A>) -> (T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Luma<S> as (T));
 
 impl_is_within_bounds! {
     Luma<S> {
@@ -1883,78 +1749,7 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<S, T> Distribution<Luma<S, T>> for Standard
-where
-    Standard: Distribution<T>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Luma<S, T> {
-        Luma {
-            luma: rng.gen(),
-            standard: PhantomData,
-        }
-    }
-}
-
-#[cfg(feature = "random")]
-pub struct UniformLuma<S, T>
-where
-    T: SampleUniform,
-{
-    luma: Uniform<T>,
-    standard: PhantomData<S>,
-}
-
-#[cfg(feature = "random")]
-impl<S, T> SampleUniform for Luma<S, T>
-where
-    T: SampleUniform + Clone,
-{
-    type Sampler = UniformLuma<S, T>;
-}
-
-#[cfg(feature = "random")]
-impl<S, T> UniformSampler for UniformLuma<S, T>
-where
-    T: SampleUniform + Clone,
-{
-    type X = Luma<S, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformLuma {
-            luma: Uniform::new::<_, T>(low.luma.clone(), high.luma.clone()),
-            standard: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformLuma {
-            luma: Uniform::new_inclusive::<_, T>(low.luma.clone(), high.luma.clone()),
-            standard: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Luma<S, T> {
-        Luma {
-            luma: self.luma.sample(rng),
-            standard: PhantomData,
-        }
-    }
-}
+impl_rand_traits_cartesian!(UniformLuma, Luma<S> {luma} phantom: standard: PhantomData<S>);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<S, T> bytemuck::Zeroable for Luma<S, T> where T: bytemuck::Zeroable {}
@@ -2071,8 +1866,7 @@
         assert_eq!(deserialized, Luma::<Srgb>::new(0.3));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Luma<Srgb, f32> {
             luma: (0.0, 1.0)
         },
diff --git a/src/palette/luv.rs.html b/src/palette/luv.rs.html
index 5534b8428..617079076 100644
--- a/src/palette/luv.rs.html
+++ b/src/palette/luv.rs.html
@@ -425,115 +425,6 @@
 425
 426
 427
-428
-429
-430
-431
-432
-433
-434
-435
-436
-437
-438
-439
-440
-441
-442
-443
-444
-445
-446
-447
-448
-449
-450
-451
-452
-453
-454
-455
-456
-457
-458
-459
-460
-461
-462
-463
-464
-465
-466
-467
-468
-469
-470
-471
-472
-473
-474
-475
-476
-477
-478
-479
-480
-481
-482
-483
-484
-485
-486
-487
-488
-489
-490
-491
-492
-493
-494
-495
-496
-497
-498
-499
-500
-501
-502
-503
-504
-505
-506
-507
-508
-509
-510
-511
-512
-513
-514
-515
-516
-517
-518
-519
-520
-521
-522
-523
-524
-525
-526
-527
-528
-529
-530
-531
-532
-533
-534
-535
-536
 
//! Types for the CIE L\*u\*v\* (CIELUV) color space.
 
 use core::{
@@ -541,18 +432,6 @@
     ops::{Add, Mul, Neg},
 };
 
-#[cfg(feature = "random")]
-use core::ops::Sub;
-
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     angle::RealAngle,
     bool_mask::{HasBoolMask, LazySelect},
@@ -756,29 +635,7 @@
     }
 }
 
-impl<Wp, T> From<(T, T, T)> for Luv<Wp, T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Luv<Wp, T>> for (T, T, T) {
-    fn from(color: Luv<Wp, T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Luv<Wp, T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Luv<Wp, T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Luv<Wp, T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Luv<Wp> as (T, T, T));
 
 impl_is_within_bounds! {
     Luv<Wp> {
@@ -862,90 +719,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Luv<Wp, T>> for Standard
-where
-    T: Real + Mul<Output = T> + Sub<Output = T>,
-    Standard: Distribution<T>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Luv<Wp, T> {
-        Luv {
-            l: rng.gen() * T::from_f64(100.0),
-            u: rng.gen() * T::from_f64(260.0) - T::from_f64(84.0),
-            v: rng.gen() * T::from_f64(243.0) - T::from_f64(135.0),
-            white_point: PhantomData,
-        }
-    }
-}
-
-/// Sample CIE L\*u\*v\* (CIELUV) colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformLuv<Wp, T>
-where
-    T: SampleUniform,
-{
-    l: Uniform<T>,
-    u: Uniform<T>,
-    v: Uniform<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Luv<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type Sampler = UniformLuv<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformLuv<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type X = Luv<Wp, T>;
-
-    fn new<B1, B2>(low_v: B1, high_v: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_v.borrow().clone();
-        let high = high_v.borrow().clone();
-
-        UniformLuv {
-            l: Uniform::new::<_, T>(low.l, high.l),
-            u: Uniform::new::<_, T>(low.u, high.u),
-            v: Uniform::new::<_, T>(low.v, high.v),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_v: B1, high_v: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_v.borrow().clone();
-        let high = high_v.borrow().clone();
-
-        UniformLuv {
-            l: Uniform::new_inclusive::<_, T>(low.l, high.l),
-            u: Uniform::new_inclusive::<_, T>(low.u, high.u),
-            v: Uniform::new_inclusive::<_, T>(low.v, high.v),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Luv<Wp, T> {
-        Luv {
-            l: self.l.sample(rng),
-            u: self.u.sample(rng),
-            v: self.v.sample(rng),
-            white_point: PhantomData,
-        }
+impl_rand_traits_cartesian!(
+    UniformLuv,
+    Luv<Wp> {
+        l => [|x| x * T::from_f64(100.0)],
+        u => [|x| x * T::from_f64(260.0) - T::from_f64(84.0)],
+        v => [|x| x * T::from_f64(243.0) - T::from_f64(135.0)]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+    where T: Real + core::ops::Sub<Output = T> + core::ops::Mul<Output = T>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Luv<Wp, T> where T: bytemuck::Zeroable {}
@@ -1059,15 +842,14 @@
         assert_eq!(deserialized, Luv::new(80.0, 20.0, 30.0));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
-    Luv<D65, f32> {
-    l: (0.0, 100.0),
-    u: (-84.0, 176.0),
-    v: (-135.0, 108.0)
-    },
-    min: Luv::new(0.0f32, -84.0, -135.0),
-    max: Luv::new(100.0, 176.0, 108.0)
+    test_uniform_distribution! {
+        Luv<D65, f32> {
+        l: (0.0, 100.0),
+        u: (-84.0, 176.0),
+        v: (-135.0, 108.0)
+        },
+        min: Luv::new(0.0f32, -84.0, -135.0),
+        max: Luv::new(100.0, 176.0, 108.0)
     }
 }
 

\ No newline at end of file diff --git a/src/palette/macros.rs.html b/src/palette/macros.rs.html index ee5132f8a..681e8d913 100644 --- a/src/palette/macros.rs.html +++ b/src/palette/macros.rs.html @@ -37,19 +37,7 @@ 37 38 39 -40 -41 -42 -43 -44 -45 -46 -
pub use self::{arithmetics::*, casting::*, mix::*};
-
-#[cfg(feature = "random")]
-pub use self::random::*;
-
-// From https://stackoverflow.com/questions/60187436/rust-macro-repetition-with-plus
+
// From https://stackoverflow.com/questions/60187436/rust-macro-repetition-with-plus
 macro_rules! strip_plus {
     (+ $($rest: tt)*) => {
         $($rest)*
@@ -86,8 +74,6 @@
 mod copy_clone;
 #[macro_use]
 mod hue;
-
-#[cfg(feature = "random")]
-#[macro_use]
+#[macro_use]
 mod random;
 
\ No newline at end of file diff --git a/src/palette/macros/convert.rs.html b/src/palette/macros/convert.rs.html index fd648643d..db28e900b 100644 --- a/src/palette/macros/convert.rs.html +++ b/src/palette/macros/convert.rs.html @@ -17,6 +17,73 @@ 17 18 19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86
/// Check that traits for converting to and from XYZ have been implemented.
 #[cfg(test)]
 macro_rules! test_convert_into_from_xyz {
@@ -36,4 +103,71 @@
         }
     };
 }
+
+macro_rules! impl_tuple_conversion {
+    ($ty: ident as ($($component_ty: ident),+)) => {
+        impl_tuple_conversion!($ty<> as ($($component_ty),+));
+    };
+    ($ty: ident <$($ty_param: ident),*> as ($($component_ty: ident),+)) => {
+        impl<$($ty_param,)* T> From<($($component_ty,)+)> for $ty<$($ty_param,)* T> {
+            fn from(components: ($($component_ty,)+)) -> Self {
+                Self::from_components(components)
+            }
+        }
+
+        impl<$($ty_param,)* T> From<$ty<$($ty_param,)* T>> for ($($component_ty,)+) {
+            fn from(color: $ty<$($ty_param,)* T>) -> ($($component_ty,)+) {
+                color.into_components()
+            }
+        }
+
+        impl<$($ty_param,)* T, A> From<($($component_ty,)+ A)> for crate::Alpha<$ty<$($ty_param,)* T>, A> {
+            fn from(components: ($($component_ty,)+ A)) -> Self {
+                Self::from_components(components)
+            }
+        }
+
+        impl<$($ty_param,)* T, A> From<crate::Alpha<$ty<$($ty_param,)* T>, A>> for ($($component_ty,)+ A) {
+            fn from(color: crate::Alpha<$ty<$($ty_param,)* T>, A>) -> ($($component_ty,)+ A) {
+                color.into_components()
+            }
+        }
+    };
+}
+
+macro_rules! __replace_generic_hue {
+    (H, $hue_ty: ident) => {$hue_ty<T>};
+    ($other: ident, $hue_ty: ident) => {$other};
+}
+
+macro_rules! impl_tuple_conversion_hue {
+    ($ty: ident as ($($component_ty: ident),+), $hue_ty: ident) => {
+        impl_tuple_conversion_hue!($ty<> as ($($component_ty),+), $hue_ty);
+    };
+    ($ty: ident <$($ty_param: ident),*> as ($($component_ty: ident),+), $hue_ty: ident) => {
+        impl<$($ty_param,)* T, H: Into<$hue_ty<T>>> From<($($component_ty,)+)> for $ty<$($ty_param,)* T> {
+            fn from(components: ($($component_ty,)+)) -> Self {
+                Self::from_components(components)
+            }
+        }
+
+        impl<$($ty_param,)* T> From<$ty<$($ty_param,)* T>> for ($(__replace_generic_hue!($component_ty, $hue_ty),)+) {
+            fn from(color: $ty<$($ty_param,)* T>) -> ($(__replace_generic_hue!($component_ty, $hue_ty),)+) {
+                color.into_components()
+            }
+        }
+
+        impl<$($ty_param,)* T, H: Into<$hue_ty<T>>, A> From<($($component_ty,)+ A)> for crate::Alpha<$ty<$($ty_param,)* T>, A> {
+            fn from(components: ($($component_ty,)+ A)) -> Self {
+                Self::from_components(components)
+            }
+        }
+
+        impl<$($ty_param,)* T, A> From<crate::Alpha<$ty<$($ty_param,)* T>, A>> for ($(__replace_generic_hue!($component_ty, $hue_ty),)+ A) {
+            fn from(color: crate::Alpha<$ty<$($ty_param,)* T>, A>) -> ($(__replace_generic_hue!($component_ty, $hue_ty),)+ A) {
+                color.into_components()
+            }
+        }
+    };
+}
 
\ No newline at end of file diff --git a/src/palette/macros/random.rs.html b/src/palette/macros/random.rs.html new file mode 100644 index 000000000..57f965242 --- /dev/null +++ b/src/palette/macros/random.rs.html @@ -0,0 +1,1713 @@ +random.rs - source
1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
+300
+301
+302
+303
+304
+305
+306
+307
+308
+309
+310
+311
+312
+313
+314
+315
+316
+317
+318
+319
+320
+321
+322
+323
+324
+325
+326
+327
+328
+329
+330
+331
+332
+333
+334
+335
+336
+337
+338
+339
+340
+341
+342
+343
+344
+345
+346
+347
+348
+349
+350
+351
+352
+353
+354
+355
+356
+357
+358
+359
+360
+361
+362
+363
+364
+365
+366
+367
+368
+369
+370
+371
+372
+373
+374
+375
+376
+377
+378
+379
+380
+381
+382
+383
+384
+385
+386
+387
+388
+389
+390
+391
+392
+393
+394
+395
+396
+397
+398
+399
+400
+401
+402
+403
+404
+405
+406
+407
+408
+409
+410
+411
+412
+413
+414
+415
+416
+417
+418
+419
+420
+421
+422
+423
+424
+425
+426
+427
+428
+429
+430
+431
+432
+433
+434
+435
+436
+437
+438
+439
+440
+441
+442
+443
+444
+445
+446
+447
+448
+449
+450
+451
+452
+453
+454
+455
+456
+457
+458
+459
+460
+461
+462
+463
+464
+465
+466
+467
+468
+469
+470
+471
+472
+473
+474
+475
+476
+477
+478
+479
+480
+481
+482
+483
+484
+485
+486
+487
+488
+489
+490
+491
+492
+493
+494
+495
+496
+497
+498
+499
+500
+501
+502
+503
+504
+505
+506
+507
+508
+509
+510
+511
+512
+513
+514
+515
+516
+517
+518
+519
+520
+521
+522
+523
+524
+525
+526
+527
+528
+529
+530
+531
+532
+533
+534
+535
+536
+537
+538
+539
+540
+541
+542
+543
+544
+545
+546
+547
+548
+549
+550
+551
+552
+553
+554
+555
+556
+557
+558
+559
+560
+561
+562
+563
+564
+565
+566
+567
+568
+569
+570
+571
+572
+573
+574
+575
+576
+577
+578
+579
+580
+581
+582
+583
+584
+585
+586
+587
+588
+589
+590
+591
+592
+593
+594
+595
+596
+597
+598
+599
+600
+601
+602
+603
+604
+605
+606
+607
+608
+609
+610
+611
+612
+613
+614
+615
+616
+617
+618
+619
+620
+621
+622
+623
+624
+625
+626
+627
+628
+629
+630
+631
+632
+633
+634
+635
+636
+637
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+
#[cfg(feature = "random")]
+#[cfg(test)]
+macro_rules! assert_uniform_distribution {
+    ($bins:expr) => {{
+        let bins = &$bins;
+
+        for (i, &bin) in bins.iter().enumerate() {
+            if bin < 5 {
+                panic!("{}[{}] < 5: {:?}", stringify!($bins), i, bins);
+            }
+        }
+        const P_LIMIT: f64 = 0.01; // Keeping it low to account for the RNG noise
+        let p_value = crate::random_sampling::test_utils::uniform_distribution_test(bins);
+        if p_value < P_LIMIT {
+            panic!(
+                "distribution of {} is not uniform enough (p-value {} < {}): {:?}",
+                stringify!($bins),
+                p_value,
+                P_LIMIT,
+                bins
+            );
+        }
+    }};
+}
+
+#[cfg(test)]
+macro_rules! test_uniform_distribution {
+    (
+        $ty:path $(as $base_ty:path)? {
+            $($component:ident: ($component_min:expr, $component_max:expr)),+$(,)?
+        },
+        min: $min:expr,
+        max: $max:expr$(,)?
+    ) => {
+        #[cfg(feature = "random")]
+        #[test]
+        fn uniform_distribution_rng_gen() {
+            use rand::Rng;
+
+            const BINS: usize = crate::random_sampling::test_utils::BINS;
+            const SAMPLES: usize = crate::random_sampling::test_utils::SAMPLES;
+
+            $(let mut $component = [0; BINS];)+
+
+            let mut rng = rand_mt::Mt::new(1234); // We want the same seed on every run to avoid random fails
+
+            for _ in 0..SAMPLES {
+                let color: $ty = rng.gen();
+                $(let color: $base_ty = crate::convert::IntoColorUnclamped::into_color_unclamped(color);)?
+
+                if $(color.$component < $component_min || color.$component > $component_max)||+ {
+                    continue;
+                }
+
+                $({
+                    let min: f32 = $component_min;
+                    let max: f32 = $component_max;
+                    let range = max - min;
+                    let normalized = (color.$component - min) / range;
+                    $component[((normalized * BINS as f32) as usize).min(BINS - 1)] += 1;
+                })+
+            }
+
+            $(assert_uniform_distribution!($component);)+
+        }
+
+        #[cfg(feature = "random")]
+        #[test]
+        fn uniform_distribution_uniform_sample() {
+            use rand::distributions::uniform::Uniform;
+            use rand::Rng;
+
+            const BINS: usize = crate::random_sampling::test_utils::BINS;
+            const SAMPLES: usize = crate::random_sampling::test_utils::SAMPLES;
+
+            $(let mut $component = [0; BINS];)+
+
+            let mut rng = rand_mt::Mt::new(1234); // We want the same seed on every run to avoid random fails
+            let uniform_sampler = Uniform::new($min, $max);
+
+            for _ in 0..SAMPLES {
+                let color: $ty = rng.sample(&uniform_sampler);
+                $(let color: $base_ty = crate::convert::IntoColorUnclamped::into_color_unclamped(color);)?
+
+                if $(color.$component < $component_min || color.$component > $component_max)||+ {
+                    continue;
+                }
+
+                $({
+                    let min: f32 = $component_min;
+                    let max: f32 = $component_max;
+                    let range = max - min;
+                    let normalized = (color.$component - min) / range;
+                    $component[((normalized * BINS as f32) as usize).min(BINS - 1)] += 1;
+                })+
+            }
+
+            $(assert_uniform_distribution!($component);)+
+        }
+
+        #[cfg(feature = "random")]
+        #[test]
+        fn uniform_distribution_uniform_sample_inclusive() {
+            use rand::distributions::uniform::Uniform;
+            use rand::Rng;
+
+            const BINS: usize = crate::random_sampling::test_utils::BINS;
+            const SAMPLES: usize = crate::random_sampling::test_utils::SAMPLES;
+
+            $(let mut $component = [0; BINS];)+
+
+            let mut rng = rand_mt::Mt::new(1234); // We want the same seed on every run to avoid random fails
+            let uniform_sampler = Uniform::new_inclusive($min, $max);
+
+            for _ in 0..SAMPLES {
+                let color: $ty = rng.sample(&uniform_sampler);
+                $(let color: $base_ty = crate::convert::IntoColorUnclamped::into_color_unclamped(color);)?
+
+                if $(color.$component < $component_min || color.$component > $component_max)||+ {
+                    continue;
+                }
+
+                $({
+                    let min: f32 = $component_min;
+                    let max: f32 = $component_max;
+                    let range = max - min;
+                    let normalized = (color.$component - min) / range;
+                    $component[((normalized * BINS as f32) as usize).min(BINS - 1)] += 1;
+                })+
+            }
+
+            $(assert_uniform_distribution!($component);)+
+        }
+    };
+}
+
+macro_rules! __apply_map_fn {
+    ($value: expr) => {
+        $value
+    };
+    ($value: expr, $map_fn: expr) => {
+        $map_fn($value)
+    };
+}
+
+macro_rules! impl_rand_traits_cartesian {
+    (
+        $uniform_ty: ident,
+        $ty: ident
+        {$($component: ident $(=> [$map_fn: expr])?),+}
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        impl_rand_traits_cartesian!(
+            $uniform_ty,
+            $ty<>
+            {$($component $( => [$map_fn])?),+}
+            $(phantom: $phantom : PhantomData<$phantom_ty>)?
+            $(where $($where)+)?);
+    };
+    (
+        $uniform_ty: ident,
+        $ty: ident <$($ty_param: ident),*>
+        {$($component: ident $(=> [$map_fn: expr])?),+}
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::Distribution<$ty<$($ty_param,)* T>> for rand::distributions::Standard
+        where
+            rand::distributions::Standard: rand::distributions::Distribution<T>,
+            $($($where)+)?
+        {
+            #[allow(clippy::redundant_closure_call)]
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                $ty {
+                    $($component: __apply_map_fn!(rng.gen::<T>() $(, $map_fn)?),)+
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+
+        /// Samples colors uniformly.
+        #[cfg(feature = "random")]
+        pub struct $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform,
+        {
+            $($component: rand::distributions::uniform::Uniform<T>,)+
+            $($phantom: core::marker::PhantomData<$phantom_ty>,)?
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::SampleUniform for $ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform + Clone,
+        {
+            type Sampler = $uniform_ty<$($ty_param,)* T>;
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::UniformSampler for $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform + Clone,
+        {
+            type X = $ty<$($ty_param,)* T>;
+
+            fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow();
+                let high = high_b.borrow();
+
+                Self {
+                    $($component: rand::distributions::uniform::Uniform::new::<_, T>(low.$component.clone(), high.$component.clone()),)+
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow();
+                let high = high_b.borrow();
+
+                Self {
+                    $($component: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(low.$component.clone(), high.$component.clone()),)+
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use rand::distributions::Distribution;
+
+                $ty {
+                    $($component: self.$component.sample(rng),)+
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+    };
+}
+
+macro_rules! impl_rand_traits_cylinder {
+    (
+        $uniform_ty: ident,
+        $ty: ident
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident $(=> [$height_map_fn: expr])?,
+            radius: $radius: ident $(=> [$radius_map_fn: expr])?
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        impl_rand_traits_cylinder!(
+            $uniform_ty,
+            $ty<>
+            {
+                hue: $hue_uniform_ty => $hue_ty,
+                height: $height $(=> [$height_map_fn])?,
+                radius: $radius $(=> [$radius_map_fn])?
+            }
+            $(phantom: $phantom : PhantomData<$phantom_ty>)?
+            $(where $($where)+)?);
+    };
+    (
+        $uniform_ty: ident,
+        $ty: ident <$($ty_param: ident),*>
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident $(=> [$height_map_fn: expr])?,
+            radius: $radius: ident $(=> [$radius_map_fn: expr])?
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::Distribution<$ty<$($ty_param,)* T>> for rand::distributions::Standard
+        where
+            T: crate::num::Sqrt,
+            rand::distributions::Standard: rand::distributions::Distribution<T> + rand::distributions::Distribution<$hue_ty<T>>,
+            $($($where)+)?
+        {
+            #[allow(clippy::redundant_closure_call)]
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                $ty {
+                    hue: rng.gen::<$hue_ty<T>>(),
+                    $height: __apply_map_fn!(rng.gen::<T>() $(, $height_map_fn)?),
+                    $radius: __apply_map_fn!(rng.gen::<T>().sqrt() $(, $radius_map_fn)?),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+
+        /// Samples colors uniformly.
+        #[cfg(feature = "random")]
+        pub struct $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform,
+        {
+            hue: crate::hues::$hue_uniform_ty<T>,
+            $height: rand::distributions::uniform::Uniform<T>,
+            $radius: rand::distributions::uniform::Uniform<T>,
+            $($phantom: core::marker::PhantomData<$phantom_ty>,)?
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::SampleUniform for $ty<$($ty_param,)* T>
+        where
+            T: crate::num::Sqrt + core::ops::Mul<Output = T> + Clone + rand::distributions::uniform::SampleUniform,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type Sampler = $uniform_ty<$($ty_param,)* T>;
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::UniformSampler for $uniform_ty<$($ty_param,)* T>
+        where
+            T: crate::num::Sqrt + core::ops::Mul<Output = T> + Clone + rand::distributions::uniform::SampleUniform,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type X = $ty<$($ty_param,)* T>;
+
+            fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                $uniform_ty {
+                    $height: rand::distributions::uniform::Uniform::new::<_, T>(low.$height, high.$height),
+                    $radius: rand::distributions::uniform::Uniform::new::<_, T>(
+                        low.$radius.clone() * low.$radius,
+                        high.$radius.clone() * high.$radius,
+                    ),
+                    hue: crate::hues::$hue_uniform_ty::new(low.hue, high.hue),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                $uniform_ty {
+                    $height: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(low.$height, high.$height),
+                    $radius: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(
+                        low.$radius.clone() * low.$radius,
+                        high.$radius.clone() * high.$radius,
+                    ),
+                    hue: crate::hues::$hue_uniform_ty::new_inclusive(low.hue, high.hue),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use rand::distributions::Distribution;
+
+                $ty {
+                    $height: self.$height.sample(rng),
+                    $radius: self.$radius.sample(rng).sqrt(),
+                    hue: self.hue.sample(rng),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+    };
+}
+
+macro_rules! impl_rand_traits_hsv_cone {
+    (
+        $uniform_ty: ident,
+        $ty: ident
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident,
+            radius: $radius: ident
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        impl_rand_traits_hsv_cone!(
+            $uniform_ty,
+            $ty<>
+            {
+                hue: $hue_uniform_ty => $hue_ty,
+                height: $height,
+                radius: $radius
+            }
+            $(phantom: $phantom : PhantomData<$phantom_ty>)?
+            $(where $($where)+)?);
+    };
+    (
+        $uniform_ty: ident,
+        $ty: ident <$($ty_param: ident),*>
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident,
+            radius: $radius: ident
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::Distribution<$ty<$($ty_param,)* T>> for rand::distributions::Standard
+        where
+            T: crate::num::Cbrt + crate::num::Sqrt,
+            rand::distributions::Standard: rand::distributions::Distribution<T> + rand::distributions::Distribution<$hue_ty<T>>,
+        {
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                let hue = rng.gen::<$hue_ty<T>>();
+                let crate::random_sampling::HsvSample { saturation: $radius, value: $height } =
+                    crate::random_sampling::sample_hsv(rng.gen(), rng.gen());
+
+                $ty {
+                    hue,
+                    $radius,
+                    $height,
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+
+        /// Samples colors uniformly.
+        #[cfg(feature = "random")]
+        pub struct $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform,
+        {
+            hue: crate::hues::$hue_uniform_ty<T>,
+            u1: rand::distributions::uniform::Uniform<T>,
+            u2: rand::distributions::uniform::Uniform<T>,
+            $($phantom: core::marker::PhantomData<$phantom_ty>,)?
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::SampleUniform for $ty<$($ty_param,)* T>
+        where
+            T: crate::num::Cbrt + crate::num::Sqrt + crate::num::Powi + Clone + rand::distributions::uniform::SampleUniform,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type Sampler = $uniform_ty<$($ty_param,)* T>;
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::UniformSampler for $uniform_ty<$($ty_param,)* T>
+        where
+            T: crate::num::Cbrt + crate::num::Sqrt + crate::num::Powi + Clone + rand::distributions::uniform::SampleUniform,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type X = $ty<$($ty_param,)* T>;
+
+            fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                let (r1_min, r2_min) =
+                    crate::random_sampling::invert_hsv_sample(crate::random_sampling::HsvSample {
+                        value: low.$height,
+                        saturation: low.$radius,
+                    });
+                let (r1_max, r2_max) =
+                    crate::random_sampling::invert_hsv_sample(crate::random_sampling::HsvSample {
+                        value: high.$height,
+                        saturation: high.$radius,
+                    });
+
+                $uniform_ty {
+                    hue: crate::hues::$hue_uniform_ty::new(low.hue, high.hue),
+                    u1: rand::distributions::uniform::Uniform::new::<_, T>(r1_min, r1_max),
+                    u2: rand::distributions::uniform::Uniform::new::<_, T>(r2_min, r2_max),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                let (r1_min, r2_min) =
+                    crate::random_sampling::invert_hsv_sample(crate::random_sampling::HsvSample {
+                        value: low.$height,
+                        saturation: low.$radius,
+                    });
+                let (r1_max, r2_max) =
+                    crate::random_sampling::invert_hsv_sample(crate::random_sampling::HsvSample {
+                        value: high.$height,
+                        saturation: high.$radius,
+                    });
+
+                $uniform_ty {
+                    hue: crate::hues::$hue_uniform_ty::new_inclusive(low.hue, high.hue),
+                    u1: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(r1_min, r1_max),
+                    u2: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(r2_min, r2_max),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use rand::distributions::Distribution;
+
+                let hue = self.hue.sample(rng);
+                let crate::random_sampling::HsvSample { saturation: $radius, value: $height } =
+                    crate::random_sampling::sample_hsv(self.u1.sample(rng), self.u2.sample(rng));
+
+                $ty {
+                    hue,
+                    $radius,
+                    $height,
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+    }
+}
+
+macro_rules! impl_rand_traits_hsl_bicone {
+    (
+        $uniform_ty: ident,
+        $ty: ident
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident $(=> [$height_map_fn: expr, $height_unmap_fn: expr])?,
+            radius: $radius: ident $(=> [$radius_map_fn: expr, $radius_unmap_fn: expr])?
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        impl_rand_traits_hsl_bicone!(
+            $uniform_ty,
+            $ty<>
+            {
+                hue: $hue_uniform_ty => $hue_ty,
+                height: $height $(=> [$height_map_fn, $height_unmap_fn])?,
+                radius: $radius $(=> [$radius_map_fn, $radius_unmap_fn])?
+            }
+            $(phantom: $phantom : PhantomData<$phantom_ty>)?
+            $(where $($where)+)?);
+    };
+    (
+        $uniform_ty: ident,
+        $ty: ident <$($ty_param: ident),*>
+        {
+            hue: $hue_uniform_ty: ident => $hue_ty: ident,
+            height: $height: ident $(=> [$height_map_fn: expr, $height_unmap_fn: expr])?,
+            radius: $radius: ident $(=> [$radius_map_fn: expr, $radius_unmap_fn: expr])?
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::Distribution<$ty<$($ty_param,)* T>> for rand::distributions::Standard
+        where
+            T: crate::num::Real + crate::num::One + crate::num::Cbrt + crate::num::Sqrt + crate::num::Arithmetics + crate::num::PartialCmp + Clone,
+            T::Mask: crate::bool_mask::LazySelect<T> + Clone,
+            rand::distributions::Standard: rand::distributions::Distribution<T> + rand::distributions::Distribution<$hue_ty<T>>,
+        {
+            #[allow(clippy::redundant_closure_call)]
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                let hue = rng.gen::<$hue_ty<T>>();
+                let crate::random_sampling::HslSample { saturation, lightness } =
+                    crate::random_sampling::sample_hsl(rng.gen(), rng.gen());
+
+                $ty {
+                    hue,
+                    $radius: __apply_map_fn!(saturation $(, $radius_map_fn)?),
+                    $height: __apply_map_fn!(lightness $(, $height_map_fn)?),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+
+        /// Samples colors uniformly.
+        #[cfg(feature = "random")]
+        pub struct $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform,
+        {
+            hue: crate::hues::$hue_uniform_ty<T>,
+            u1: rand::distributions::uniform::Uniform<T>,
+            u2: rand::distributions::uniform::Uniform<T>,
+            $($phantom: core::marker::PhantomData<$phantom_ty>,)?
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::SampleUniform for $ty<$($ty_param,)* T>
+        where
+            T: crate::num::Real + crate::num::One + crate::num::Cbrt + crate::num::Sqrt + crate::num::Powi + crate::num::Arithmetics + crate::num::PartialCmp + Clone + rand::distributions::uniform::SampleUniform,
+            T::Mask: crate::bool_mask::LazySelect<T> + Clone,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type Sampler = $uniform_ty<$($ty_param,)* T>;
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::UniformSampler for $uniform_ty<$($ty_param,)* T>
+        where
+            T: crate::num::Real + crate::num::One + crate::num::Cbrt + crate::num::Sqrt + crate::num::Powi + crate::num::Arithmetics + crate::num::PartialCmp + Clone + rand::distributions::uniform::SampleUniform,
+            T::Mask: crate::bool_mask::LazySelect<T> + Clone,
+            $hue_ty<T>: rand::distributions::uniform::SampleBorrow<$hue_ty<T>>,
+            crate::hues::$hue_uniform_ty<T>: rand::distributions::uniform::UniformSampler<X = $hue_ty<T>>,
+        {
+            type X = $ty<$($ty_param,)* T>;
+
+            #[allow(clippy::redundant_closure_call)]
+            fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                let (r1_min, r2_min) =
+                    crate::random_sampling::invert_hsl_sample(crate::random_sampling::HslSample {
+                        lightness: __apply_map_fn!(low.$height $(, $radius_unmap_fn)?),
+                        saturation: __apply_map_fn!(low.$radius $(, $height_unmap_fn)?),
+                    });
+                let (r1_max, r2_max) =
+                    crate::random_sampling::invert_hsl_sample(crate::random_sampling::HslSample {
+                        lightness: __apply_map_fn!(high.$height $(, $radius_unmap_fn)?),
+                        saturation: __apply_map_fn!(high.$radius $(, $height_unmap_fn)?),
+                    });
+
+                $uniform_ty {
+                    hue: crate::hues::$hue_uniform_ty::new(low.hue, high.hue),
+                    u1: rand::distributions::uniform::Uniform::new::<_, T>(r1_min, r1_max),
+                    u2: rand::distributions::uniform::Uniform::new::<_, T>(r2_min, r2_max),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            #[allow(clippy::redundant_closure_call)]
+            fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                let low = low_b.borrow().clone();
+                let high = high_b.borrow().clone();
+
+                let (r1_min, r2_min) =
+                    crate::random_sampling::invert_hsl_sample(crate::random_sampling::HslSample {
+                        lightness: __apply_map_fn!(low.$height $(, $radius_unmap_fn)?),
+                        saturation: __apply_map_fn!(low.$radius $(, $height_unmap_fn)?),
+                    });
+                let (r1_max, r2_max) =
+                    crate::random_sampling::invert_hsl_sample(crate::random_sampling::HslSample {
+                        lightness: __apply_map_fn!(high.$height $(, $radius_unmap_fn)?),
+                        saturation: __apply_map_fn!(high.$radius $(, $height_unmap_fn)?),
+                    });
+
+                $uniform_ty {
+                    hue: crate::hues::$hue_uniform_ty::new_inclusive(low.hue, high.hue),
+                    u1: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(r1_min, r1_max),
+                    u2: rand::distributions::uniform::Uniform::new_inclusive::<_, T>(r2_min, r2_max),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            #[allow(clippy::redundant_closure_call)]
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use rand::distributions::Distribution;
+
+                let hue = self.hue.sample(rng);
+                let crate::random_sampling::HslSample { saturation, lightness } =
+                    crate::random_sampling::sample_hsl(self.u1.sample(rng), self.u2.sample(rng));
+
+                $ty {
+                    hue,
+                    $radius: __apply_map_fn!(saturation $(, $radius_map_fn)?),
+                    $height: __apply_map_fn!(lightness $(, $height_map_fn)?),
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+        }
+    }
+}
+
+macro_rules! impl_rand_traits_hwb_cone {
+    (
+        $uniform_ty: ident,
+        $ty: ident,
+        $hsv_uniform_ty: ident,
+        $hsv_ty: ident
+        {
+            height: $height: ident,
+            radius: $radius: ident
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        impl_rand_traits_hwb_cone!(
+            $uniform_ty,
+            $ty<>,
+            $hsv_uniform_ty,
+            $hsv_ty
+            {
+                height: $height,
+                radius: $radius
+            }
+            $(phantom: $phantom : PhantomData<$phantom_ty>)?
+            $(where $($where)+)?);
+    };
+    (
+        $uniform_ty: ident,
+        $ty: ident <$($ty_param: ident),*>,
+        $hsv_uniform_ty: ident,
+        $hsv_ty: ident
+        {
+            height: $height: ident,
+            radius: $radius: ident
+        }
+        $(phantom: $phantom: ident : PhantomData<$phantom_ty: ident>)?
+        $(where $($where: tt)+)?
+    ) => {
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::Distribution<$ty<$($ty_param,)* T>> for rand::distributions::Standard
+        where
+            rand::distributions::Standard: rand::distributions::Distribution<$hsv_ty<$($ty_param,)* T>>,
+            $ty<$($ty_param,)* T>: crate::convert::FromColorUnclamped<$hsv_ty<$($ty_param,)* T>>,
+        {
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use crate::convert::FromColorUnclamped;
+                $ty::from_color_unclamped(rng.gen::<$hsv_ty<$($ty_param,)* T>>())
+            }
+        }
+
+        /// Samples colors uniformly.
+        #[cfg(feature = "random")]
+        pub struct $uniform_ty<$($ty_param,)* T>
+        where
+            T: rand::distributions::uniform::SampleUniform,
+        {
+            sampler: $hsv_uniform_ty<$($ty_param,)* T>,
+            $($phantom: core::marker::PhantomData<$phantom_ty>,)?
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::SampleUniform for $ty<$($ty_param,)* T>
+        where
+            T: crate::num::MinMax + Clone + rand::distributions::uniform::SampleUniform,
+            $hsv_ty<$($ty_param,)* T>: crate::convert::FromColorUnclamped<$ty<$($ty_param,)* T>> + rand::distributions::uniform::SampleBorrow<$hsv_ty<$($ty_param,)* T>>,
+            $ty<$($ty_param,)* T>: crate::convert::FromColorUnclamped<$hsv_ty<$($ty_param,)* T>>,
+            $hsv_uniform_ty<$($ty_param,)* T>: rand::distributions::uniform::UniformSampler<X = $hsv_ty<$($ty_param,)* T>>,
+        {
+            type Sampler = $uniform_ty<$($ty_param,)* T>;
+        }
+
+        #[cfg(feature = "random")]
+        impl<$($ty_param,)* T> rand::distributions::uniform::UniformSampler for $uniform_ty<$($ty_param,)* T>
+        where
+            T: crate::num::MinMax + Clone + rand::distributions::uniform::SampleUniform,
+            $hsv_ty<$($ty_param,)* T>: crate::convert::FromColorUnclamped<$ty<$($ty_param,)* T>> + rand::distributions::uniform::SampleBorrow<$hsv_ty<$($ty_param,)* T>>,
+            $ty<$($ty_param,)* T>: crate::convert::FromColorUnclamped<$hsv_ty<$($ty_param,)* T>>,
+            $hsv_uniform_ty<$($ty_param,)* T>: rand::distributions::uniform::UniformSampler<X = $hsv_ty<$($ty_param,)* T>>,
+        {
+            type X = $ty<$($ty_param,)* T>;
+
+            fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                use crate::convert::FromColorUnclamped;
+                let low_input = $hsv_ty::from_color_unclamped(low_b.borrow().clone());
+                let high_input = $hsv_ty::from_color_unclamped(high_b.borrow().clone());
+
+                let (low_saturation, high_saturation) = low_input.saturation.min_max(high_input.saturation);
+                let (low_value, high_value) = low_input.value.min_max(high_input.value);
+
+                let low = $hsv_ty{
+                    hue: low_input.hue,
+                    $radius: low_saturation,
+                    $height: low_value,
+                    $($phantom: core::marker::PhantomData,)?
+                };
+                let high = $hsv_ty{
+                    hue: high_input.hue,
+                    $radius: high_saturation,
+                    $height: high_value,
+                    $($phantom: core::marker::PhantomData,)?
+                };
+
+                let sampler = $hsv_uniform_ty::<$($ty_param,)* T>::new(low, high);
+
+                $uniform_ty {
+                    sampler,
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
+            where
+                B1: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+                B2: rand::distributions::uniform::SampleBorrow<Self::X> + Sized,
+            {
+                use crate::convert::FromColorUnclamped;
+                let low_input = $hsv_ty::from_color_unclamped(low_b.borrow().clone());
+                let high_input = $hsv_ty::from_color_unclamped(high_b.borrow().clone());
+
+                let (low_saturation, high_saturation) = low_input.saturation.min_max(high_input.saturation);
+                let (low_value, high_value) = low_input.value.min_max(high_input.value);
+
+                let low = $hsv_ty{
+                    hue: low_input.hue,
+                    $radius: low_saturation,
+                    $height: low_value,
+                    $($phantom: core::marker::PhantomData,)?
+                };
+                let high = $hsv_ty{
+                    hue: high_input.hue,
+                    $radius: high_saturation,
+                    $height: high_value,
+                    $($phantom: core::marker::PhantomData,)?
+                };
+
+                let sampler = $hsv_uniform_ty::<$($ty_param,)* T>::new_inclusive(low, high);
+
+                $uniform_ty {
+                    sampler,
+                    $($phantom: core::marker::PhantomData,)?
+                }
+            }
+
+            fn sample<R: rand::Rng + ?Sized>(&self, rng: &mut R) -> $ty<$($ty_param,)* T> {
+                use crate::convert::FromColorUnclamped;
+                $ty::from_color_unclamped(self.sampler.sample(rng))
+            }
+        }
+    };
+}
+
\ No newline at end of file diff --git a/src/palette/okhsv.rs.html b/src/palette/okhsv.rs.html index 239d0d4fa..f68d8a201 100644 --- a/src/palette/okhsv.rs.html +++ b/src/palette/okhsv.rs.html @@ -560,13 +560,6 @@ 560 561 562 -563 -564 -565 -566 -567 -568 -569
//! Types for the Okhsv color space.
 
 use core::fmt::Debug;
@@ -644,14 +637,7 @@
     pub value: T,
 }
 
-impl<T, H: Into<OklabHue<T>>> From<(H, T, T)> for Okhsv<T>
-where
-    T: Zero + MinMax,
-{
-    fn from(components: (H, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
+impl_tuple_conversion_hue!(Okhsv as (H, T, T), OklabHue);
 
 impl<T> HasBoolMask for Okhsv<T>
 where
diff --git a/src/palette/okhsv/alpha.rs.html b/src/palette/okhsv/alpha.rs.html
index 41ceb2d8c..1e0baad0c 100644
--- a/src/palette/okhsv/alpha.rs.html
+++ b/src/palette/okhsv/alpha.rs.html
@@ -67,24 +67,6 @@
 67
 68
 69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
 
use super::Okhsv;
 use crate::angle::FromAngle;
 use crate::hues::OklabHue;
@@ -154,22 +136,4 @@
         Self::new(hue, saturation, value, alpha)
     }
 }
-
-impl<T> From<Okhsv<T>> for (OklabHue<T>, T, T) {
-    fn from(color: Okhsv<T>) -> (OklabHue<T>, T, T) {
-        color.into_components()
-    }
-}
-
-impl<T, H: Into<OklabHue<T>>, A> From<(H, T, T, A)> for Alpha<Okhsv<T>, A> {
-    fn from(components: (H, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<T, A> From<Alpha<Okhsv<T>, A>> for (OklabHue<T>, T, T, A) {
-    fn from(color: Alpha<Okhsv<T>, A>) -> (OklabHue<T>, T, T, A) {
-        color.into_components()
-    }
-}
 
\ No newline at end of file diff --git a/src/palette/oklab.rs.html b/src/palette/oklab.rs.html index 8027023da..bf4b2b26d 100644 --- a/src/palette/oklab.rs.html +++ b/src/palette/oklab.rs.html @@ -713,17 +713,6 @@ 713 714 715 -716 -717 -718 -719 -720 -721 -722 -723 -724 -725 -726
//! Types for the Oklab color space.
 
 use core::{any::TypeId, fmt::Debug, ops::Mul};
@@ -1236,17 +1225,7 @@
     }
 }
 
-impl<T> From<(T, T, T)> for Oklab<T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<T> From<Oklab<T>> for (T, T, T) {
-    fn from(color: Oklab<T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Oklab as (T, T, T));
 
 impl<T> HasBoolMask for Oklab<T>
 where
@@ -1439,8 +1418,7 @@
         assert_eq!(deserialized, Oklab::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Oklab {
             l: (0.0, 1.0),
             a: (-1.0, 1.0),
diff --git a/src/palette/oklab/alpha.rs.html b/src/palette/oklab/alpha.rs.html
index 713e1dfa1..753828f40 100644
--- a/src/palette/oklab/alpha.rs.html
+++ b/src/palette/oklab/alpha.rs.html
@@ -24,18 +24,6 @@
 24
 25
 26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
 
use crate::alpha::Alpha;
 use crate::oklab::Oklab;
 
@@ -62,16 +50,4 @@
         Self::new(l, a, b, alpha)
     }
 }
-
-impl<T, A> From<(T, T, T, A)> for Alpha<Oklab<T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<T, A> From<Alpha<Oklab<T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Oklab<T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
 
\ No newline at end of file diff --git a/src/palette/oklch.rs.html b/src/palette/oklch.rs.html index aa8d5b097..01ad34e7c 100644 --- a/src/palette/oklch.rs.html +++ b/src/palette/oklch.rs.html @@ -293,17 +293,6 @@ 293 294 295 -296 -297 -298 -299 -300 -301 -302 -303 -304 -305 -306
//! Types for the Oklch color space.
 
 pub use alpha::Oklcha;
@@ -429,17 +418,7 @@
     }
 }
 
-impl<T, H: Into<OklabHue<T>>> From<(T, T, H)> for Oklch<T> {
-    fn from(components: (T, T, H)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<T> From<Oklch<T>> for (T, T, OklabHue<T>) {
-    fn from(color: Oklch<T>) -> (T, T, OklabHue<T>) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion_hue!(Oklch as (T, T, H), OklabHue);
 
 impl<T> HasBoolMask for Oklch<T>
 where
@@ -599,8 +578,7 @@
         );
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Oklch<f32> as crate::Oklab {
             l: (0.0, 1.0),
             a: (-0.7, 0.7),
diff --git a/src/palette/oklch/alpha.rs.html b/src/palette/oklch/alpha.rs.html
index d1210f71c..33fbf9003 100644
--- a/src/palette/oklch/alpha.rs.html
+++ b/src/palette/oklch/alpha.rs.html
@@ -35,18 +35,6 @@
 35
 36
 37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
 
use crate::{Alpha, OklabHue};
 
 use super::Oklch;
@@ -84,16 +72,4 @@
         Self::new(l, chroma, hue, alpha)
     }
 }
-
-impl<T, H: Into<OklabHue<T>>, A> From<(T, T, H, A)> for Alpha<Oklch<T>, A> {
-    fn from(components: (T, T, H, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<T, A> From<Alpha<Oklch<T>, A>> for (T, T, OklabHue<T>, A) {
-    fn from(color: Alpha<Oklch<T>, A>) -> (T, T, OklabHue<T>, A) {
-        color.into_components()
-    }
-}
 
\ No newline at end of file diff --git a/src/palette/rgb/rgb.rs.html b/src/palette/rgb/rgb.rs.html index f6fc34b31..eb7e41bc2 100644 --- a/src/palette/rgb/rgb.rs.html +++ b/src/palette/rgb/rgb.rs.html @@ -1525,120 +1525,6 @@ 1525 1526 1527 -1528 -1529 -1530 -1531 -1532 -1533 -1534 -1535 -1536 -1537 -1538 -1539 -1540 -1541 -1542 -1543 -1544 -1545 -1546 -1547 -1548 -1549 -1550 -1551 -1552 -1553 -1554 -1555 -1556 -1557 -1558 -1559 -1560 -1561 -1562 -1563 -1564 -1565 -1566 -1567 -1568 -1569 -1570 -1571 -1572 -1573 -1574 -1575 -1576 -1577 -1578 -1579 -1580 -1581 -1582 -1583 -1584 -1585 -1586 -1587 -1588 -1589 -1590 -1591 -1592 -1593 -1594 -1595 -1596 -1597 -1598 -1599 -1600 -1601 -1602 -1603 -1604 -1605 -1606 -1607 -1608 -1609 -1610 -1611 -1612 -1613 -1614 -1615 -1616 -1617 -1618 -1619 -1620 -1621 -1622 -1623 -1624 -1625 -1626 -1627 -1628 -1629 -1630 -1631 -1632 -1633 -1634 -1635 -1636 -1637 -1638 -1639 -1640 -1641
use core::{
     any::TypeId,
     fmt,
@@ -1649,15 +1535,6 @@
     str::FromStr,
 };
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     alpha::Alpha,
     angle::{RealAngle, UnsignedAngle},
@@ -2643,30 +2520,7 @@
 impl_color_mul!(Rgb<S>, [red, green, blue], standard);
 impl_color_div!(Rgb<S>, [red, green, blue], standard);
 
-impl<S, T> From<(T, T, T)> for Rgb<S, T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T> From<Rgb<S, T>> for (T, T, T) {
-    fn from(color: Rgb<S, T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
-
-impl<S, T, A> From<(T, T, T, A)> for Alpha<Rgb<S, T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<S, T, A> From<Alpha<Rgb<S, T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Rgb<S, T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
-
+impl_tuple_conversion!(Rgb<S> as (T, T, T));
 impl_array_casts!(Rgb<S, T>, [T; 3]);
 impl_simd_array_conversion!(Rgb<S>, [red, green, blue], standard);
 impl_struct_of_array_traits!(Rgb<S>, [red, green, blue], standard);
@@ -2917,88 +2771,7 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<S, T> Distribution<Rgb<S, T>> for Standard
-where
-    Standard: Distribution<T>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Rgb<S, T> {
-        Rgb {
-            red: rng.gen(),
-            green: rng.gen(),
-            blue: rng.gen(),
-            standard: PhantomData,
-        }
-    }
-}
-
-#[cfg(feature = "random")]
-pub struct UniformRgb<S, T>
-where
-    T: SampleUniform,
-{
-    red: Uniform<T>,
-    green: Uniform<T>,
-    blue: Uniform<T>,
-    standard: PhantomData<S>,
-}
-
-#[cfg(feature = "random")]
-impl<S, T> SampleUniform for Rgb<S, T>
-where
-    T: SampleUniform + Clone,
-{
-    type Sampler = UniformRgb<S, T>;
-}
-
-#[cfg(feature = "random")]
-impl<S, T> UniformSampler for UniformRgb<S, T>
-where
-    T: SampleUniform + Clone,
-{
-    type X = Rgb<S, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformRgb {
-            red: Uniform::new::<_, T>(low.red.clone(), high.red.clone()),
-            green: Uniform::new::<_, T>(low.green.clone(), high.green.clone()),
-            blue: Uniform::new::<_, T>(low.blue.clone(), high.blue.clone()),
-            standard: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformRgb {
-            red: Uniform::new_inclusive::<_, T>(low.red.clone(), high.red.clone()),
-            green: Uniform::new_inclusive::<_, T>(low.green.clone(), high.green.clone()),
-            blue: Uniform::new_inclusive::<_, T>(low.blue.clone(), high.blue.clone()),
-            standard: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Rgb<S, T> {
-        Rgb {
-            red: self.red.sample(rng),
-            green: self.green.sample(rng),
-            blue: self.blue.sample(rng),
-            standard: PhantomData,
-        }
-    }
-}
+impl_rand_traits_cartesian!(UniformRgb, Rgb<S> {red, green, blue} phantom: standard: PhantomData<S>);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<S, T> bytemuck::Zeroable for Rgb<S, T> where T: bytemuck::Zeroable {}
@@ -3269,8 +3042,7 @@
         );
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Rgb<Srgb, f32> {
             red: (0.0, 1.0),
             green: (0.0, 1.0),
diff --git a/src/palette/xyz.rs.html b/src/palette/xyz.rs.html
index d1324e07a..35cf0b0f8 100644
--- a/src/palette/xyz.rs.html
+++ b/src/palette/xyz.rs.html
@@ -532,127 +532,10 @@
 532
 533
 534
-535
-536
-537
-538
-539
-540
-541
-542
-543
-544
-545
-546
-547
-548
-549
-550
-551
-552
-553
-554
-555
-556
-557
-558
-559
-560
-561
-562
-563
-564
-565
-566
-567
-568
-569
-570
-571
-572
-573
-574
-575
-576
-577
-578
-579
-580
-581
-582
-583
-584
-585
-586
-587
-588
-589
-590
-591
-592
-593
-594
-595
-596
-597
-598
-599
-600
-601
-602
-603
-604
-605
-606
-607
-608
-609
-610
-611
-612
-613
-614
-615
-616
-617
-618
-619
-620
-621
-622
-623
-624
-625
-626
-627
-628
-629
-630
-631
-632
-633
-634
-635
-636
-637
-638
-639
-640
-641
-642
 
//! Types for the CIE 1931 XYZ color space.
 
 use core::{marker::PhantomData, ops::Mul};
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     bool_mask::{HasBoolMask, LazySelect},
     convert::{FromColorUnclamped, IntoColorUnclamped},
@@ -969,29 +852,7 @@
     }
 }
 
-impl<Wp, T> From<(T, T, T)> for Xyz<Wp, T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Xyz<Wp, T>> for (T, T, T) {
-    fn from(color: Xyz<Wp, T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Xyz<Wp, T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Xyz<Wp, T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Xyz<Wp, T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Xyz<Wp> as (T, T, T));
 
 impl_is_within_bounds! {
     Xyz<Wp> {
@@ -1074,92 +935,16 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Xyz<Wp, T>> for Standard
-where
-    T: Mul<Output = T>,
-    Wp: WhitePoint<T>,
-    Standard: Distribution<T>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Xyz<Wp, T> {
-        let xyz_ref: Xyz<Wp, T> = Wp::get_xyz().with_white_point();
-        Xyz {
-            x: rng.gen(),
-            y: rng.gen(),
-            z: rng.gen(),
-            white_point: PhantomData,
-        } * xyz_ref
-    }
-}
-
-/// Sample CIE 1931 XYZ colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformXyz<Wp, T>
-where
-    T: SampleUniform,
-{
-    x: Uniform<T>,
-    y: Uniform<T>,
-    z: Uniform<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Xyz<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type Sampler = UniformXyz<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformXyz<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type X = Xyz<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformXyz {
-            x: Uniform::new::<_, T>(low.x.clone(), high.x.clone()),
-            y: Uniform::new::<_, T>(low.y.clone(), high.y.clone()),
-            z: Uniform::new::<_, T>(low.z.clone(), high.z.clone()),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformXyz {
-            x: Uniform::new_inclusive::<_, T>(low.x.clone(), high.x.clone()),
-            y: Uniform::new_inclusive::<_, T>(low.y.clone(), high.y.clone()),
-            z: Uniform::new_inclusive::<_, T>(low.z.clone(), high.z.clone()),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Xyz<Wp, T> {
-        Xyz {
-            x: self.x.sample(rng),
-            y: self.y.sample(rng),
-            z: self.z.sample(rng),
-            white_point: PhantomData,
-        }
+impl_rand_traits_cartesian!(
+    UniformXyz,
+    Xyz<Wp> {
+        x => [|x| x * Wp::get_xyz().x],
+        y => [|y| y * Wp::get_xyz().y],
+        z => [|z| z * Wp::get_xyz().z]
     }
-}
+    phantom: white_point: PhantomData<Wp>
+    where T: core::ops::Mul<Output = T>, Wp: WhitePoint<T>
+);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Xyz<Wp, T> where T: bytemuck::Zeroable {}
@@ -1271,8 +1056,7 @@
         assert_eq!(deserialized, Xyz::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Xyz<D65, f32> {
             x: (0.0, D65::get_xyz().x),
             y: (0.0, D65::get_xyz().y),
diff --git a/src/palette/yxy.rs.html b/src/palette/yxy.rs.html
index 7da81692c..e77e99486 100644
--- a/src/palette/yxy.rs.html
+++ b/src/palette/yxy.rs.html
@@ -401,133 +401,10 @@
 401
 402
 403
-404
-405
-406
-407
-408
-409
-410
-411
-412
-413
-414
-415
-416
-417
-418
-419
-420
-421
-422
-423
-424
-425
-426
-427
-428
-429
-430
-431
-432
-433
-434
-435
-436
-437
-438
-439
-440
-441
-442
-443
-444
-445
-446
-447
-448
-449
-450
-451
-452
-453
-454
-455
-456
-457
-458
-459
-460
-461
-462
-463
-464
-465
-466
-467
-468
-469
-470
-471
-472
-473
-474
-475
-476
-477
-478
-479
-480
-481
-482
-483
-484
-485
-486
-487
-488
-489
-490
-491
-492
-493
-494
-495
-496
-497
-498
-499
-500
-501
-502
-503
-504
-505
-506
-507
-508
-509
-510
-511
-512
-513
-514
-515
-516
-517
 
//! Types for the CIE 1931 Yxy (xyY) color space.
 
 use core::marker::PhantomData;
 
-#[cfg(feature = "random")]
-use rand::{
-    distributions::{
-        uniform::{SampleBorrow, SampleUniform, Uniform, UniformSampler},
-        Distribution, Standard,
-    },
-    Rng,
-};
-
 use crate::{
     bool_mask::{HasBoolMask, LazySelect},
     convert::{FromColorUnclamped, IntoColorUnclamped},
@@ -689,29 +566,7 @@
 impl_reference_component_methods!(Yxy<Wp>, [x, y, luma], white_point);
 impl_struct_of_arrays_methods!(Yxy<Wp>, [x, y, luma], white_point);
 
-impl<Wp, T> From<(T, T, T)> for Yxy<Wp, T> {
-    fn from(components: (T, T, T)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T> From<Yxy<Wp, T>> for (T, T, T) {
-    fn from(color: Yxy<Wp, T>) -> (T, T, T) {
-        color.into_components()
-    }
-}
-
-impl<Wp, T, A> From<(T, T, T, A)> for Alpha<Yxy<Wp, T>, A> {
-    fn from(components: (T, T, T, A)) -> Self {
-        Self::from_components(components)
-    }
-}
-
-impl<Wp, T, A> From<Alpha<Yxy<Wp, T>, A>> for (T, T, T, A) {
-    fn from(color: Alpha<Yxy<Wp, T>, A>) -> (T, T, T, A) {
-        color.into_components()
-    }
-}
+impl_tuple_conversion!(Yxy<Wp> as (T, T, T));
 
 impl<Wp, T> FromColorUnclamped<Yxy<Wp, T>> for Yxy<Wp, T> {
     fn from_color_unclamped(color: Yxy<Wp, T>) -> Self {
@@ -834,89 +689,7 @@
     }
 }
 
-#[cfg(feature = "random")]
-impl<Wp, T> Distribution<Yxy<Wp, T>> for Standard
-where
-    Standard: Distribution<T>,
-{
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Yxy<Wp, T> {
-        Yxy {
-            x: rng.gen(),
-            y: rng.gen(),
-            luma: rng.gen(),
-            white_point: PhantomData,
-        }
-    }
-}
-
-/// Sample CIE 1931 Yxy (xyY) colors uniformly.
-#[cfg(feature = "random")]
-pub struct UniformYxy<Wp, T>
-where
-    T: SampleUniform,
-{
-    x: Uniform<T>,
-    y: Uniform<T>,
-    luma: Uniform<T>,
-    white_point: PhantomData<Wp>,
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> SampleUniform for Yxy<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type Sampler = UniformYxy<Wp, T>;
-}
-
-#[cfg(feature = "random")]
-impl<Wp, T> UniformSampler for UniformYxy<Wp, T>
-where
-    T: Clone + SampleUniform,
-{
-    type X = Yxy<Wp, T>;
-
-    fn new<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformYxy {
-            x: Uniform::new::<_, T>(low.x.clone(), high.x.clone()),
-            y: Uniform::new::<_, T>(low.y.clone(), high.y.clone()),
-            luma: Uniform::new::<_, T>(low.luma.clone(), high.luma.clone()),
-            white_point: PhantomData,
-        }
-    }
-
-    fn new_inclusive<B1, B2>(low_b: B1, high_b: B2) -> Self
-    where
-        B1: SampleBorrow<Self::X> + Sized,
-        B2: SampleBorrow<Self::X> + Sized,
-    {
-        let low = low_b.borrow();
-        let high = high_b.borrow();
-
-        UniformYxy {
-            x: Uniform::new_inclusive::<_, T>(low.x.clone(), high.x.clone()),
-            y: Uniform::new_inclusive::<_, T>(low.y.clone(), high.y.clone()),
-            luma: Uniform::new_inclusive::<_, T>(low.luma.clone(), high.luma.clone()),
-            white_point: PhantomData,
-        }
-    }
-
-    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Yxy<Wp, T> {
-        Yxy {
-            x: self.x.sample(rng),
-            y: self.y.sample(rng),
-            luma: self.luma.sample(rng),
-            white_point: PhantomData,
-        }
-    }
-}
+impl_rand_traits_cartesian!(UniformYxy, Yxy<Wp> {x, y, luma} phantom: white_point: PhantomData<Wp>);
 
 #[cfg(feature = "bytemuck")]
 unsafe impl<Wp, T> bytemuck::Zeroable for Yxy<Wp, T> where T: bytemuck::Zeroable {}
@@ -1021,8 +794,7 @@
         assert_eq!(deserialized, Yxy::new(0.3, 0.8, 0.1));
     }
 
-    #[cfg(feature = "random")]
-    test_uniform_distribution! {
+    test_uniform_distribution! {
         Yxy<D65, f32> {
             x: (0.0, 1.0),
             y: (0.0, 1.0),