Skip to main content

parse/
parse.rs

1// Copyright 2024 the Color Authors
2// SPDX-License-Identifier: Apache-2.0 OR MIT
3
4//! Parsing example
5//!
6//! Outputs debug strings for the parse to stdout
7//!
8//! Typical usage:
9//!
10//! ```sh
11//! cargo run --example parse 'oklab(0.5 0.2 0)'
12//! ```
13
14use color::{AlphaColor, Hwb, Lab, Srgb};
15
16fn main() {
17    let arg = std::env::args().nth(1).expect("give color as arg");
18    match color::parse_color(&arg) {
19        Ok(color) => {
20            println!("display: {color}");
21            println!("debug: {color:?}");
22            let srgba: AlphaColor<Srgb> = color.to_alpha_color();
23            println!("{srgba:?}");
24            let lab: AlphaColor<Lab> = color.to_alpha_color();
25            println!("{lab:?}");
26            let hwb: AlphaColor<Hwb> = color.to_alpha_color();
27            println!("{hwb:?}");
28        }
29        Err(e) => println!("error: {e}"),
30    }
31}