typing improvements

This commit is contained in:
2025-03-08 23:25:04 -05:00
parent 52e7ed7386
commit f64aa16143
3 changed files with 14 additions and 11 deletions

View File

@@ -12,7 +12,7 @@ pub type BitBoardInner = u64;
pub struct BitBoard(BitBoardInner);
// BitBoard should be big enough to fit all points on the board
const_assert!(std::mem::size_of::<BitBoard>() * 8 >= Board::BOARD_AREA as usize);
const_assert!(std::mem::size_of::<BitBoard>() * 8 >= Board::BOARD_AREA.0 as usize);
impl BitBoard {
#[allow(clippy::new_without_default)]
@@ -38,7 +38,6 @@ impl BitBoard {
self.0 |= (value as BitBoardInner) << index; // set bit (if needed)
}
// works on both `bitvec` and native (const on native)
pub const fn count(&self) -> usize {
self.0.count_ones() as usize
}
@@ -94,7 +93,7 @@ impl BitBoard {
const fn col_mask(col: CoordAxis) -> Self {
let mut mask = 0;
let mut i = 0;
while i < Board::BOARD_AREA {
while i < Board::BOARD_AREA.0 {
mask |= 1 << (i + col);
i += Board::BOARD_SIZE;
}
@@ -154,7 +153,7 @@ mod test {
#[test]
fn set_and_get() {
let mut b = BitBoard::new();
for c in 0..Board::BOARD_AREA {
for c in 0..Board::BOARD_AREA.0 {
assert!(
!b.get(CoordPair(c)),
"A just-initalized BitBoard should be completely empty"