test_rust2/
lib.rs

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