pub struct PromotionLogic;Expand description
A stateless struct containing only static helper methods.
Implementations§
Source§impl PromotionLogic
impl PromotionLogic
Sourcepub fn promote_pawn(
mapping: &mut PieceMapping,
occupied: &mut Occupied,
captured_bits: &mut CapturedBits,
pawn_pid: u8,
color: u8,
dest: u8,
new_kind: u8,
) -> u8
pub fn promote_pawn( mapping: &mut PieceMapping, occupied: &mut Occupied, captured_bits: &mut CapturedBits, pawn_pid: u8, color: u8, dest: u8, new_kind: u8, ) -> u8
Promote a pawn pawn_pid on dest (rank 0 or 7) to new_kind (0=queen,1=bishop,2=knight,3=rook).
Uses fixed PIDs:
• White: 14=queen, 12=bishop, 10=knight, 8=rook
• Black: 30=queen, 28=bishop, 26=knight, 24=rook
Updates mapping, occupied, and captured_bits. Returns the new PID.
Auto Trait Implementations§
impl Freeze for PromotionLogic
impl RefUnwindSafe for PromotionLogic
impl Send for PromotionLogic
impl Sync for PromotionLogic
impl Unpin for PromotionLogic
impl UnsafeUnpin for PromotionLogic
impl UnwindSafe for PromotionLogic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more