[position] Remove the sight data from Position
This commit is contained in:
parent
a5e8f33afe
commit
891b3ddbb9
1 changed files with 1 additions and 11 deletions
|
@ -18,7 +18,6 @@ pub struct Position {
|
||||||
flags: Flags,
|
flags: Flags,
|
||||||
pieces: PieceBitBoards,
|
pieces: PieceBitBoards,
|
||||||
en_passant_square: Option<Square>,
|
en_passant_square: Option<Square>,
|
||||||
sight: [OnceCell<BitBoard>; 2],
|
|
||||||
moves: OnceCell<Moves>,
|
moves: OnceCell<Moves>,
|
||||||
half_move_counter: u16,
|
half_move_counter: u16,
|
||||||
full_move_number: u16,
|
full_move_number: u16,
|
||||||
|
@ -187,13 +186,6 @@ impl Position {
|
||||||
self.en_passant_square
|
self.en_passant_square
|
||||||
}
|
}
|
||||||
|
|
||||||
/// A bitboard representing the squares the pieces of the given color can
|
|
||||||
/// see. This is synonymous with the squares attacked by the player's
|
|
||||||
/// pieces.
|
|
||||||
pub(crate) fn sight_of_player(&self, color: Color) -> BitBoard {
|
|
||||||
*self.sight[color as usize].get_or_init(|| self._sight_of_player(color, &self.pieces))
|
|
||||||
}
|
|
||||||
|
|
||||||
fn _sight_of_player(&self, player: Color, pieces: &PieceBitBoards) -> BitBoard {
|
fn _sight_of_player(&self, player: Color, pieces: &PieceBitBoards) -> BitBoard {
|
||||||
let en_passant_square = self.en_passant_square;
|
let en_passant_square = self.en_passant_square;
|
||||||
|
|
||||||
|
@ -308,10 +300,9 @@ impl Position {
|
||||||
flags,
|
flags,
|
||||||
en_passant_square,
|
en_passant_square,
|
||||||
pieces,
|
pieces,
|
||||||
sight: [OnceCell::new(), OnceCell::new()],
|
|
||||||
moves: OnceCell::new(),
|
|
||||||
half_move_counter,
|
half_move_counter,
|
||||||
full_move_number,
|
full_move_number,
|
||||||
|
..Default::default()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -349,7 +340,6 @@ impl Default for Position {
|
||||||
flags: Flags::default(),
|
flags: Flags::default(),
|
||||||
pieces: PieceBitBoards::default(),
|
pieces: PieceBitBoards::default(),
|
||||||
en_passant_square: None,
|
en_passant_square: None,
|
||||||
sight: [OnceCell::new(), OnceCell::new()],
|
|
||||||
moves: OnceCell::new(),
|
moves: OnceCell::new(),
|
||||||
half_move_counter: 0,
|
half_move_counter: 0,
|
||||||
full_move_number: 1,
|
full_move_number: 1,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue