//! The “rules” layer enforces special‐move logic on top of BoardState.
//! It exposes functions/modules for: castling, en passant, promotion, check/mate.
// Re-export the submodules so external code can refer to them as `rules::XYZ`.
pub use CastlingLogic;
pub use EnPassantLogic;
pub use PromotionLogic;
pub use CheckmateLogic;