diff --git a/board/src/lib.rs b/board/src/lib.rs index 442935a..969bd6f 100644 --- a/board/src/lib.rs +++ b/board/src/lib.rs @@ -3,8 +3,8 @@ #[macro_use] mod bitboard; mod display; -mod moves; mod r#move; +mod move_generator; #[macro_use] pub mod piece; #[macro_use] diff --git a/board/src/moves/bishop.rs b/board/src/move_generator/bishop.rs similarity index 100% rename from board/src/moves/bishop.rs rename to board/src/move_generator/bishop.rs diff --git a/board/src/moves/king.rs b/board/src/move_generator/king.rs similarity index 100% rename from board/src/moves/king.rs rename to board/src/move_generator/king.rs diff --git a/board/src/moves/knight.rs b/board/src/move_generator/knight.rs similarity index 100% rename from board/src/moves/knight.rs rename to board/src/move_generator/knight.rs diff --git a/board/src/moves/mod.rs b/board/src/move_generator/mod.rs similarity index 84% rename from board/src/moves/mod.rs rename to board/src/move_generator/mod.rs index 44e2f7c..eb5aee8 100644 --- a/board/src/moves/mod.rs +++ b/board/src/move_generator/mod.rs @@ -15,7 +15,7 @@ pub(self) use move_set::MoveSet; use crate::{ piece::{Color, Piece, PlacedPiece}, - BitBoard, Position, Square, + Move, Position, Square, }; use std::collections::BTreeMap; @@ -33,14 +33,14 @@ macro_rules! move_generator_declaration { }; ($name:ident, struct) => { pub(super) struct $name<'pos> { - position: &'pos crate::Position, - color: crate::piece::Color, - move_sets: std::collections::BTreeMap, + position: &'pos $crate::Position, + color: $crate::piece::Color, + move_sets: std::collections::BTreeMap<$crate::Square, $crate::move_generator::MoveSet>, } }; ($name:ident, new) => { impl<'pos> $name<'pos> { - pub(super) fn new(position: &Position, color: $crate::piece::Color) -> $name { + pub(super) fn new(position: &$crate::Position, color: $crate::piece::Color) -> $name { $name { position, color, @@ -51,7 +51,7 @@ macro_rules! move_generator_declaration { }; ($name:ident, getters) => { impl<'pos> $name<'pos> { - pub(super) fn iter(&self) -> impl Iterator + '_ { + pub(super) fn iter(&self) -> impl Iterator + '_ { self.move_sets.values().map(|set| set.moves()).flatten() } diff --git a/board/src/moves/move_generator.rs b/board/src/move_generator/move_generator.rs similarity index 92% rename from board/src/moves/move_generator.rs rename to board/src/move_generator/move_generator.rs index b4962db..6fa44b0 100644 --- a/board/src/moves/move_generator.rs +++ b/board/src/move_generator/move_generator.rs @@ -4,10 +4,9 @@ use super::{ bishop::ClassicalMoveGenerator as BishopMoveGenerator, king::KingMoveGenerator, knight::KnightMoveGenerator, pawn::PawnMoveGenerator, queen::ClassicalMoveGenerator as QueenMoveGenerator, - rook::ClassicalMoveGenerator as RookMoveGenerator, Move, + rook::ClassicalMoveGenerator as RookMoveGenerator, }; -use crate::piece::Color; -use crate::Position; +use crate::{piece::Color, Move, Position}; pub struct Moves<'pos> { pawn_moves: PawnMoveGenerator<'pos>, diff --git a/board/src/moves/move_set.rs b/board/src/move_generator/move_set.rs similarity index 100% rename from board/src/moves/move_set.rs rename to board/src/move_generator/move_set.rs diff --git a/board/src/moves/pawn.rs b/board/src/move_generator/pawn.rs similarity index 100% rename from board/src/moves/pawn.rs rename to board/src/move_generator/pawn.rs diff --git a/board/src/moves/queen.rs b/board/src/move_generator/queen.rs similarity index 100% rename from board/src/moves/queen.rs rename to board/src/move_generator/queen.rs diff --git a/board/src/moves/rook.rs b/board/src/move_generator/rook.rs similarity index 100% rename from board/src/moves/rook.rs rename to board/src/move_generator/rook.rs diff --git a/board/src/position/position.rs b/board/src/position/position.rs index 2311df3..fb1b402 100644 --- a/board/src/position/position.rs +++ b/board/src/position/position.rs @@ -2,7 +2,7 @@ use super::{flags::Flags, Pieces}; use crate::{ - moves::Moves, + move_generator::Moves, piece::{Color, Piece, PiecePlacementError, PlacedPiece, Shape}, sight::Sight, BitBoard, Square,