cleanroom implementation of a chess engine. doesn't work :)

this isn't going to work anymore i don't think

+3 -3
+3 -3
src/lib.rs
··· 170 170 source_rank.is_none_or(|rank| rank == lp.rank) 171 171 && source_file.is_none_or(|file| file == lp.file) 172 172 }) 173 - .find(|lp| self.valid_moves(lp).contains((dest_file, dest_rank))) 173 + .find(|lp| self.valid_moves(lp.clone()).contains(&(dest_file, dest_rank))) 174 174 .unwrap(); 175 175 176 176 self.capture_if_possible(dest_file, dest_rank); 177 177 piece_to_move.rank = dest_rank; 178 178 piece_to_move.file = dest_file; 179 179 } 180 - fn valid_moves(&self, lp: LocatedPiece) -> Vec<(usize, usize)> { 181 - let mut moves = vec![];j 180 + fn valid_moves(&self, lp: &LocatedPiece) -> Vec<(usize, usize)> { 181 + let mut moves = vec![]; 182 182 match lp.piece { 183 183 Piece::Pawn => ,//todo: en passant (requires a list of moves to keep track of whether the previous 184 184 //move was one that is en passantable?)