Clamped floating-point types. Provides wrappers around floating-point values clamped to the range [0,1]. ## Example Basic usage: ```rust use clampf::Clamp32; // The `Clamp64` type is also available #[derive(Debug)] pub struct Color { red: Clamp32, // A value in the range [0,1] green: Clamp32, // A value in the range [0,1] blue: Clamp32, // A value in the range [0,1] } impl Color { pub fn new(red: f32, green: f32, blue: f32) -> Self { Color { // Check the `red` value red: Clamp32::new(red), // Check the `green` value green: Clamp32::new(green), // Check the `blue` value blue: Clamp32::new(blue), } } pub fn set_red(&mut self, red: f32) { // Check the `red` value self.red.set(red); } } ``` ## Usage without the standard library For usage without the standard library you need exclude the `std` feature. This can be done by editing `Cargo.toml`: ```toml [dependencies.clampf] version = "0.1" default-features = false ``` or ```toml [dependencies] clampf = { version = "0.1", default-features = false } ```