[][src]Struct colorsys::HslRatio

pub struct HslRatio { /* fields omitted */ }

Hsl representation as ratio (from 0.0 to 1.0). Cannot be modified, added, subtracted, etc. Can be converted to Hsl and vice versa. Used for compatibility in various libraries.

Example

use colorsys::{ApproxEq, Hsl, HslRatio};

let origin = Hsl::from((126.0, 43.0, 52.0));

let ratio_f32: [f32; 3] = origin.as_ratio().into();
let ratio_f64: [f64; 4] = origin.as_ratio().into();
// ~[0.35, 0.43, 0.52, 1.0]

let converted_f32: Hsl = HslRatio::from(&ratio_f32).into();
let converted_f64: Hsl = HslRatio::from(&ratio_f64).into();

assert!(origin.approx_eq_clarify(&converted_f32, 0.0001));
assert!(origin.approx_eq(&converted_f64));

Implementations

impl HslRatio[src]

pub fn new(h: f64, s: f64, l: f64, a: f64) -> Self[src]

pub fn h(&self) -> f64[src]

pub fn s(&self) -> f64[src]

pub fn l(&self) -> f64[src]

pub fn a(&self) -> f64[src]

Trait Implementations

impl AsRef<HslRatio> for HslRatio[src]

impl Clone for HslRatio[src]

impl<'_> From<&'_ [f32; 3]> for HslRatio[src]

impl<'_> From<&'_ [f32; 4]> for HslRatio[src]

impl<'_> From<&'_ [f64; 3]> for HslRatio[src]

impl<'_> From<&'_ [f64; 4]> for HslRatio[src]

impl<'_> From<&'_ (f32, f32, f32, f32)> for HslRatio[src]

impl<'_> From<&'_ (f32, f32, f32)> for HslRatio[src]

impl<'_> From<&'_ (f64, f64, f64, f64)> for HslRatio[src]

impl<'_> From<&'_ (f64, f64, f64)> for HslRatio[src]

impl<'_> From<&'_ HslRatio> for Hsl[src]

impl<'_> From<&'_ mut HslRatio> for Hsl[src]

impl From<[f32; 3]> for HslRatio[src]

impl From<[f32; 4]> for HslRatio[src]

impl From<[f64; 3]> for HslRatio[src]

impl From<[f64; 4]> for HslRatio[src]

impl From<(f32, f32, f32, f32)> for HslRatio[src]

impl From<(f32, f32, f32)> for HslRatio[src]

impl From<(f64, f64, f64, f64)> for HslRatio[src]

impl From<(f64, f64, f64)> for HslRatio[src]

impl From<HslRatio> for Hsl[src]

impl<'a> Into<[f32; 3]> for &'a HslRatio[src]

impl<'a> Into<[f32; 3]> for &'a mut HslRatio[src]

impl Into<[f32; 3]> for HslRatio[src]

impl<'a> Into<[f32; 4]> for &'a HslRatio[src]

impl<'a> Into<[f32; 4]> for &'a mut HslRatio[src]

impl Into<[f32; 4]> for HslRatio[src]

impl<'a> Into<[f64; 3]> for &'a HslRatio[src]

impl<'a> Into<[f64; 3]> for &'a mut HslRatio[src]

impl Into<[f64; 3]> for HslRatio[src]

impl<'a> Into<[f64; 4]> for &'a HslRatio[src]

impl<'a> Into<[f64; 4]> for &'a mut HslRatio[src]

impl Into<[f64; 4]> for HslRatio[src]

impl<'a> Into<(f32, f32, f32, f32)> for &'a HslRatio[src]

impl<'a> Into<(f32, f32, f32, f32)> for &'a mut HslRatio[src]

impl Into<(f32, f32, f32, f32)> for HslRatio[src]

impl<'a> Into<(f32, f32, f32)> for &'a HslRatio[src]

impl<'a> Into<(f32, f32, f32)> for &'a mut HslRatio[src]

impl Into<(f32, f32, f32)> for HslRatio[src]

impl<'a> Into<(f64, f64, f64, f64)> for &'a HslRatio[src]

impl<'a> Into<(f64, f64, f64, f64)> for &'a mut HslRatio[src]

impl Into<(f64, f64, f64, f64)> for HslRatio[src]

impl<'a> Into<(f64, f64, f64)> for &'a HslRatio[src]

impl<'a> Into<(f64, f64, f64)> for &'a mut HslRatio[src]

impl Into<(f64, f64, f64)> for HslRatio[src]

Auto Trait Implementations

Blanket Implementations

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

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

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

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

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

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

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.