[board] Move position builders into a builders module
Move PositionBuilder to position_builder.rs and export it from the builders module.
This commit is contained in:
parent
1a907844d6
commit
4a5ae8ec59
2 changed files with 22 additions and 3 deletions
5
board/src/position/builders/mod.rs
Normal file
5
board/src/position/builders/mod.rs
Normal file
|
@ -0,0 +1,5 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
mod position_builder;
|
||||
|
||||
pub use position_builder::Builder as PositionBuilder;
|
|
@ -1,9 +1,11 @@
|
|||
// Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
use super::{flags::Flags, piece_sets::PieceBitBoards};
|
||||
use crate::{
|
||||
bitboard::BitBoardBuilder,
|
||||
piece::{PlacedPiece, Shape},
|
||||
square::Rank,
|
||||
position::{flags::Flags, piece_sets::PieceBitBoards, BoardSide},
|
||||
r#move::Castle,
|
||||
square::{Direction, Rank},
|
||||
BitBoard, Color, MakeMoveError, Move, Piece, Position, Square,
|
||||
};
|
||||
use std::collections::BTreeMap;
|
||||
|
@ -30,7 +32,7 @@ impl Builder {
|
|||
self.kings[color_index] = square;
|
||||
}
|
||||
|
||||
self.pieces.insert(square, piece.piece());
|
||||
self.pieces.insert(square, *piece.piece());
|
||||
|
||||
self
|
||||
}
|
||||
|
@ -81,3 +83,15 @@ impl Default for Builder {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use crate::PositionBuilder;
|
||||
|
||||
#[test]
|
||||
fn place_piece() {
|
||||
let piece = piece!(White Queen on E4);
|
||||
let builder = PositionBuilder::new().place_piece(piece).build();
|
||||
assert_eq!(builder.piece_on_square(piece.square()), Some(piece));
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue