use super::*; /// How a fill or stroke should be painted. #[derive(Clone, Eq, PartialEq, Hash)] pub enum Paint { /// A solid color. Solid(Color), } impl> From for Paint { fn from(t: T) -> Self { Self::Solid(t.into()) } } impl Debug for Paint { fn fmt(&self, f: &mut Formatter) -> fmt::Result { match self { Self::Solid(color) => color.fmt(f), } } } cast! { Paint, self => match self { Self::Solid(color) => Value::Color(color), }, color: Color => Self::Solid(color), }