1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
pub mod rect; pub use crate::rect::Rect; pub mod circle; pub use crate::circle::Circle; pub mod tri; pub use crate::tri::Tri; pub mod reg; pub use crate::reg::Reg; /// Polygon trait for structs representing 2-dimensional shapes. pub trait Polygon { fn area(&self) -> f64; fn peri(&self) -> f64; } /// Enum of all the polygon types pub enum Poly { Rect(Rect), Circle(Circle), Tri(Tri), Reg(Reg), }