[bitboard] Move everything in board::bitboard to the bitboard crate
This commit is contained in:
parent
32100b9553
commit
625bfb2446
7 changed files with 25 additions and 25 deletions
|
@ -1,8 +1,8 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
use super::library::{library, FILES, RANKS};
|
||||
use super::LeadingBitScanner;
|
||||
use crate::{square::Direction, Square};
|
||||
use crate::library::{library, FILES, RANKS};
|
||||
use crate::LeadingBitScanner;
|
||||
use chess_core::{Direction, Square};
|
||||
use std::fmt;
|
||||
use std::ops::Not;
|
||||
|
||||
|
@ -72,13 +72,13 @@ impl BitBoard {
|
|||
/// Return an Iterator over the occupied squares, starting from the leading
|
||||
/// (most-significant bit) end of the field.
|
||||
pub(crate) fn occupied_squares(&self) -> impl Iterator<Item = Square> {
|
||||
LeadingBitScanner::new(self.0).map(Square::from_index)
|
||||
LeadingBitScanner::new(self.0).map(|idx| unsafe { Square::from_index(idx as u8) })
|
||||
}
|
||||
|
||||
/// Return an Iterator over the occupied squares, starting from the trailing
|
||||
/// (least-significant bit) end of the field.
|
||||
pub(crate) fn occupied_squares_trailing(&self) -> impl Iterator<Item = Square> {
|
||||
LeadingBitScanner::new(self.0).map(Square::from_index)
|
||||
LeadingBitScanner::new(self.0).map(|idx| unsafe { Square::from_index(idx as u8) })
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -243,7 +243,8 @@ impl BitBoardBuilder {
|
|||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use crate::{bitboard, Square};
|
||||
use crate::bitboard;
|
||||
use chess_core::Square;
|
||||
|
||||
#[test]
|
||||
fn display_and_debug() {
|
|
@ -1 +1,18 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
mod bit_scanner;
|
||||
mod bitboard;
|
||||
mod library;
|
||||
mod shifts;
|
||||
|
||||
pub(crate) use bit_scanner::{LeadingBitScanner, TrailingBitScanner};
|
||||
pub(crate) use bitboard::{BitBoard, BitBoardBuilder};
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! bitboard {
|
||||
($($sq:ident),* $(,)?) => {
|
||||
$crate::bitboard::BitBoardBuilder::empty()
|
||||
$(.square(chess_core::Square::$sq))*
|
||||
.build()
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
use super::BitBoard;
|
||||
use crate::{square::Direction, Square};
|
||||
use chess_core::{Direction, Square};
|
||||
use std::sync::Once;
|
||||
|
||||
pub(super) const RANKS: [BitBoard; 8] = [
|
|
@ -1,16 +0,0 @@
|
|||
mod bit_scanner;
|
||||
mod bitboard;
|
||||
mod library;
|
||||
mod shifts;
|
||||
|
||||
pub(crate) use bit_scanner::{LeadingBitScanner, TrailingBitScanner};
|
||||
pub(crate) use bitboard::{BitBoard, BitBoardBuilder};
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! bitboard {
|
||||
($($sq:ident),* $(,)?) => {
|
||||
$crate::bitboard::BitBoardBuilder::empty()
|
||||
$(.square($crate::Square::$sq))*
|
||||
.build()
|
||||
};
|
||||
}
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
pub mod fen;
|
||||
|
||||
#[macro_use]
|
||||
mod bitboard;
|
||||
mod display;
|
||||
mod r#move;
|
||||
#[macro_use]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue