use super::piece::Piece; #[derive(Debug, Clone, Copy, PartialEq, num_enum::FromPrimitive)] #[repr(u8)] pub enum Color { #[default] White, Black, } impl Color { pub fn flip(&self) -> Self { match self { Self::White => Self::Black, Self::Black => Self::White, } } pub fn from_piece(piece: Piece) -> Self { if (piece as u8) < 6 { Self::White } else { Self::Black } } }