diff --git a/board/src/bitboard/bitboard.rs b/board/src/bitboard/bitboard.rs index 60d4f22..6fee968 100644 --- a/board/src/bitboard/bitboard.rs +++ b/board/src/bitboard/bitboard.rs @@ -52,7 +52,7 @@ impl BitBoard { self.0 == 0 } - pub fn has_piece_at(self, sq: Square) -> bool { + pub fn is_set(self, sq: Square) -> bool { !(self & sq.into()).is_empty() } @@ -242,8 +242,8 @@ mod tests { #[test] fn has_piece_at() { let bb = BitBoard(0b1001100); - assert!(bb.has_piece_at(Square::C1)); - assert!(!bb.has_piece_at(Square::B1)); + assert!(bb.is_set(Square::C1)); + assert!(!bb.is_set(Square::B1)); } #[test] @@ -251,7 +251,7 @@ mod tests { let sq = Square::E4; let mut bb = BitBoard(0b1001100); bb.set_square(sq); - assert!(bb.has_piece_at(sq)); + assert!(bb.is_set(sq)); } #[test] @@ -259,7 +259,7 @@ mod tests { let sq = Square::A3; let mut bb = BitBoard(0b1001100); bb.clear_square(sq); - assert!(!bb.has_piece_at(sq)); + assert!(!bb.is_set(sq)); } #[test] diff --git a/board/src/position/position.rs b/board/src/position/position.rs index 6a1345d..c9e4fe6 100644 --- a/board/src/position/position.rs +++ b/board/src/position/position.rs @@ -137,7 +137,7 @@ impl Position { pub fn place_piece(&mut self, piece: Piece, square: Square) -> Result<(), PiecePlacementError> { let type_bb = self.bitboard_for_piece_mut(piece); - if type_bb.has_piece_at(square) { + if type_bb.is_set(square) { return Err(PiecePlacementError::ExistsOnSquare); } @@ -197,7 +197,7 @@ impl Position { for shape in Shape::iter() { let piece = Piece::new(color, *shape); let bb = self.bitboard_for_piece(piece); - if bb.has_piece_at(sq) { + if bb.is_set(sq) { return Some(PlacedPiece::new(piece, sq)); } }