fn scan_pawn_moves_diagonal_attacks<const DIR: usize>(
    board: &Board,
    moves: &mut Moves,
    index: usize,
    evasion_mask: u64
) -> usize
Expand description

Generates all possible captures for the pawns toward the direction specified by DIR and at the position specified by board, stores them into moves list (starting from index) and returns index of the first free slot. Use evasion_mask with value different than u64::MAX to restrict generator to the specified squares (useful during checks).