#![no_std]
#![forbid(unsafe_code)]
#![deny(missing_docs)]
pub(crate) mod arith;
pub mod chromaticities;
pub mod color;
#[cfg(feature = "f32")]
pub(crate) mod color_f32;
pub mod encoding;
pub mod fixed;
pub mod gain;
pub mod interp;
pub mod matrix;
#[cfg(feature = "oklab")]
pub mod oklab;
pub mod quantize;
pub mod space;
pub mod srgb;
pub use chromaticities::Chromaticities;
pub use color::Color;
#[cfg(feature = "f32")]
pub use color_f32::{ColorF32, F32_MAX_ERR_LSB};
pub use encoding::{Encoded, Encoding, Linear};
pub use fixed::{Q0_16, Q4_28};
pub use gain::Gain;
pub use interp::{Gradient, InterpLut};
pub use matrix::Matrix3;
#[cfg(feature = "oklab")]
pub use oklab::{
A_B_BIAS_Q428, CBRT, CBRT_MAX_ERR_LSB, OKLAB_FORWARD_MAX_LSB, OKLAB_M1, OKLAB_M1_INV, OKLAB_M2,
OKLAB_M2_INV, OKLAB_M2_INV_OFFSET, OKLAB_ROUNDTRIP_MAX_LSB, Oklab, oklab_to_srgb,
srgb_to_oklab,
};
pub use quantize::{expand, quantize};
pub use space::{ColorSpace, Perceptual, Srgb};
pub use srgb::{
SRGB_EOTF, SRGB_EOTF_MAX_ERR_LSB, SRGB_OETF, SRGB_OETF_MAX_ERR_LSB, SrgbEotf, SrgbOetf,
};