diff --git a/board/src/moves/knight.rs b/board/src/moves/knight.rs index abb2261..11f6134 100644 --- a/board/src/moves/knight.rs +++ b/board/src/moves/knight.rs @@ -7,9 +7,7 @@ use crate::{ Move, Position, }; -move_generator_declaration!(KnightMoveGenerator, struct); -move_generator_declaration!(KnightMoveGenerator, new); -move_generator_declaration!(KnightMoveGenerator, getters); +move_generator_declaration!(KnightMoveGenerator); impl<'pos> MoveGeneratorInternal for KnightMoveGenerator<'pos> { fn piece(color: Color) -> Piece { diff --git a/board/src/moves/mod.rs b/board/src/moves/mod.rs index f847db5..bee7170 100644 --- a/board/src/moves/mod.rs +++ b/board/src/moves/mod.rs @@ -36,7 +36,7 @@ macro_rules! move_generator_declaration { }; ($name:ident, struct) => { pub(super) struct $name<'pos> { - position: &'pos Position, + position: &'pos crate::Position, color: crate::piece::Color, move_sets: std::collections::BTreeMap, } @@ -88,12 +88,5 @@ trait MoveGeneratorInternal { ) } - fn move_set_for_piece(position: &Position, placed_piece: PlacedPiece) -> MoveSet { - MoveSet::new(placed_piece) - } - - fn move_list_from_bitboard(piece: Piece, square: Square, bitboard: BitBoard) -> Vec { - let map_to_move = |sq| Move::new(piece, square, sq); - bitboard.occupied_squares().map(map_to_move).collect() - } + fn move_set_for_piece(position: &Position, placed_piece: PlacedPiece) -> MoveSet; }