[bitboard, board] Remove BitBoard::empty() and BitBoard::full()
These have been deprecated for a while. Clean up the remaining uses and remove the methods from BitBoard.
This commit is contained in:
parent
3a0541a2c3
commit
3d73760146
4 changed files with 24 additions and 34 deletions
|
@ -46,16 +46,6 @@ impl BitBoard {
|
||||||
pub const EMPTY: BitBoard = BitBoard(u64::MIN);
|
pub const EMPTY: BitBoard = BitBoard(u64::MIN);
|
||||||
pub const FULL: BitBoard = BitBoard(u64::MAX);
|
pub const FULL: BitBoard = BitBoard(u64::MAX);
|
||||||
|
|
||||||
#[deprecated(note = "Use BitBoard::EMPTY instead")]
|
|
||||||
pub const fn empty() -> BitBoard {
|
|
||||||
Self::EMPTY
|
|
||||||
}
|
|
||||||
|
|
||||||
#[deprecated(note = "Use BitBoard::FULL instead")]
|
|
||||||
pub const fn full() -> BitBoard {
|
|
||||||
Self::FULL
|
|
||||||
}
|
|
||||||
|
|
||||||
pub const fn new(bits: u64) -> BitBoard {
|
pub const fn new(bits: u64) -> BitBoard {
|
||||||
BitBoard(bits)
|
BitBoard(bits)
|
||||||
}
|
}
|
||||||
|
@ -109,7 +99,7 @@ impl BitBoard {
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// use chessfriend_bitboard::BitBoard;
|
/// use chessfriend_bitboard::BitBoard;
|
||||||
/// assert!(BitBoard::empty().is_empty());
|
/// assert!(BitBoard::EMPTY.is_empty());
|
||||||
/// assert!(!BitBoard::full().is_empty());
|
/// assert!(!BitBoard::full().is_empty());
|
||||||
/// assert!(!BitBoard::new(0b1000).is_empty());
|
/// assert!(!BitBoard::new(0b1000).is_empty());
|
||||||
/// ```
|
/// ```
|
||||||
|
@ -125,7 +115,7 @@ impl BitBoard {
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// use chessfriend_bitboard::BitBoard;
|
/// use chessfriend_bitboard::BitBoard;
|
||||||
/// assert!(!BitBoard::empty().is_populated());
|
/// assert!(!BitBoard::EMPTY.is_populated());
|
||||||
/// assert!(BitBoard::full().is_populated());
|
/// assert!(BitBoard::full().is_populated());
|
||||||
/// assert!(BitBoard::new(0b1).is_populated());
|
/// assert!(BitBoard::new(0b1).is_populated());
|
||||||
/// ```
|
/// ```
|
||||||
|
@ -564,8 +554,8 @@ mod tests {
|
||||||
let b = bitboard![B5 G7 H3];
|
let b = bitboard![B5 G7 H3];
|
||||||
|
|
||||||
assert_eq!(a ^ b, bitboard![B5 C5 H3]);
|
assert_eq!(a ^ b, bitboard![B5 C5 H3]);
|
||||||
assert_eq!(a ^ BitBoard::empty(), a);
|
assert_eq!(a ^ BitBoard::EMPTY, a);
|
||||||
assert_eq!(BitBoard::empty() ^ BitBoard::empty(), BitBoard::empty());
|
assert_eq!(BitBoard::EMPTY ^ BitBoard::EMPTY, BitBoard::EMPTY);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
|
@ -110,14 +110,14 @@ pub(super) struct MoveLibrary {
|
||||||
impl MoveLibrary {
|
impl MoveLibrary {
|
||||||
const fn new() -> MoveLibrary {
|
const fn new() -> MoveLibrary {
|
||||||
MoveLibrary {
|
MoveLibrary {
|
||||||
rays: [[BitBoard::empty(); Direction::NUM]; Square::NUM],
|
rays: [[BitBoard::EMPTY; Direction::NUM]; Square::NUM],
|
||||||
pawn_attacks: [[BitBoard::empty(); Square::NUM]; Color::NUM],
|
pawn_attacks: [[BitBoard::EMPTY; Square::NUM]; Color::NUM],
|
||||||
pawn_pushes: [[BitBoard::empty(); Square::NUM]; Color::NUM],
|
pawn_pushes: [[BitBoard::EMPTY; Square::NUM]; Color::NUM],
|
||||||
knight_moves: [BitBoard::empty(); Square::NUM],
|
knight_moves: [BitBoard::EMPTY; Square::NUM],
|
||||||
bishop_moves: [BitBoard::empty(); Square::NUM],
|
bishop_moves: [BitBoard::EMPTY; Square::NUM],
|
||||||
rook_moves: [BitBoard::empty(); Square::NUM],
|
rook_moves: [BitBoard::EMPTY; Square::NUM],
|
||||||
queen_moves: [BitBoard::empty(); Square::NUM],
|
queen_moves: [BitBoard::EMPTY; Square::NUM],
|
||||||
king_moves: [BitBoard::empty(); Square::NUM],
|
king_moves: [BitBoard::EMPTY; Square::NUM],
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -238,7 +238,7 @@ impl MoveLibrary {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn _generate_ray(sq: BitBoard, shift: fn(&BitBoard) -> BitBoard) -> BitBoard {
|
fn _generate_ray(sq: BitBoard, shift: fn(&BitBoard) -> BitBoard) -> BitBoard {
|
||||||
let mut ray = BitBoard::empty();
|
let mut ray = BitBoard::EMPTY;
|
||||||
|
|
||||||
let mut iter = shift(&sq);
|
let mut iter = shift(&sq);
|
||||||
while !iter.is_empty() {
|
while !iter.is_empty() {
|
||||||
|
|
|
@ -41,7 +41,7 @@ impl Movement for Piece {
|
||||||
let parameters = Board::castling_parameters(Wing::KingSide, color);
|
let parameters = Board::castling_parameters(Wing::KingSide, color);
|
||||||
parameters.target.king.into()
|
parameters.target.king.into()
|
||||||
} else {
|
} else {
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
};
|
};
|
||||||
|
|
||||||
let queenside_target_square = if board
|
let queenside_target_square = if board
|
||||||
|
@ -51,7 +51,7 @@ impl Movement for Piece {
|
||||||
let parameters = Board::castling_parameters(Wing::QueenSide, color);
|
let parameters = Board::castling_parameters(Wing::QueenSide, color);
|
||||||
parameters.target.king.into()
|
parameters.target.king.into()
|
||||||
} else {
|
} else {
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
};
|
};
|
||||||
|
|
||||||
self.sight(square, board) | kingside_target_square | queenside_target_square
|
self.sight(square, board) | kingside_target_square | queenside_target_square
|
||||||
|
@ -99,11 +99,11 @@ mod tests {
|
||||||
#[test]
|
#[test]
|
||||||
fn white_pushes_empty_board() {
|
fn white_pushes_empty_board() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::E4.into(), Color::White, BitBoard::empty()),
|
pawn_pushes(Square::E4.into(), Color::White, BitBoard::EMPTY),
|
||||||
bitboard![E5]
|
bitboard![E5]
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::E2.into(), Color::White, BitBoard::empty()),
|
pawn_pushes(Square::E2.into(), Color::White, BitBoard::EMPTY),
|
||||||
bitboard![E3 E4]
|
bitboard![E3 E4]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -111,11 +111,11 @@ mod tests {
|
||||||
#[test]
|
#[test]
|
||||||
fn black_pawn_empty_board() {
|
fn black_pawn_empty_board() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::A4.into(), Color::Black, BitBoard::empty()),
|
pawn_pushes(Square::A4.into(), Color::Black, BitBoard::EMPTY),
|
||||||
bitboard![A3]
|
bitboard![A3]
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::B7.into(), Color::Black, BitBoard::empty()),
|
pawn_pushes(Square::B7.into(), Color::Black, BitBoard::EMPTY),
|
||||||
bitboard![B6 B5]
|
bitboard![B6 B5]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -124,7 +124,7 @@ mod tests {
|
||||||
fn white_pushes_blocker() {
|
fn white_pushes_blocker() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::C5.into(), Color::White, bitboard![C6]),
|
pawn_pushes(Square::C5.into(), Color::White, bitboard![C6]),
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::D2.into(), Color::White, bitboard![D4]),
|
pawn_pushes(Square::D2.into(), Color::White, bitboard![D4]),
|
||||||
|
@ -132,7 +132,7 @@ mod tests {
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::D2.into(), Color::White, bitboard![D3]),
|
pawn_pushes(Square::D2.into(), Color::White, bitboard![D3]),
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ mod tests {
|
||||||
fn black_pushes_blocker() {
|
fn black_pushes_blocker() {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::C5.into(), Color::Black, bitboard![C4]),
|
pawn_pushes(Square::C5.into(), Color::Black, bitboard![C4]),
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::D7.into(), Color::Black, bitboard![D5]),
|
pawn_pushes(Square::D7.into(), Color::Black, bitboard![D5]),
|
||||||
|
@ -148,7 +148,7 @@ mod tests {
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
pawn_pushes(Square::D7.into(), Color::Black, bitboard![D6]),
|
pawn_pushes(Square::D7.into(), Color::Black, bitboard![D6]),
|
||||||
BitBoard::empty()
|
BitBoard::EMPTY
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -305,7 +305,7 @@ mod tests {
|
||||||
let piece = piece!(White Pawn);
|
let piece = piece!(White Pawn);
|
||||||
let sight = piece.sight(Square::E4, &pos);
|
let sight = piece.sight(Square::E4, &pos);
|
||||||
|
|
||||||
assert_eq!(sight, BitBoard::empty());
|
assert_eq!(sight, BitBoard::EMPTY);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue