1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
pub mod rectangular; pub trait CalanderPuzzle { type Placement; // returns a Vec that associates with each piece index, // a Vec of possible placements of that piece fn placements(&self, allow_flips: bool) -> Vec<Vec<Self::Placement>>; fn solve(&self) { } }