fafaster_art/lib.rs
1//! # Art
2//!
3//! A library for modeling artistic concepts.
4
5// 将内部项导出到顶层
6pub use self::kinds::PrimaryColor;
7pub use self::kinds::SecondaryColor;
8pub use self::utils::mix;
9
10pub mod kinds {
11 /// The primary colors according to the RYB color model.
12 pub enum PrimaryColor {
13 Red,
14 Yellow,
15 Blue,
16 }
17
18 /// The secondary colors according to the RYB color model.
19 pub enum SecondaryColor {
20 Orange,
21 Green,
22 Purple,
23 }
24}
25
26pub mod utils {
27
28 use crate::kinds::*;
29
30 /// Combine two primary colors in equal amounts to crate
31 /// a secondary color.
32 pub fn mix(c1: PrimaryColor, c2: PrimaryColor) -> SecondaryColor {
33 // --snip--
34 SecondaryColor::Green
35 }
36}