No description
Find a file
Eryn Wells af36b75df7 [board] Implement a pawn move generator
Holy heck I went on a *journey* here. Ultimately, I needed to implement my own
index-based iterator instead of using the Vec's Iterator.

This type establishes some patterns I want to carry forward to other move
generators.

1. The use of a Parameters struct to fully parameterize the move generation
   per-color. That lets these types only need a single color-based branch
2. A list of move lists, one list for each of captures, promotions, and quiet
   moves.
3. An index-based move iterator.
4. Separate impl for generating bitboard representations of these moves

Additional changes:

- Implement BitBoard::from_square()
- Implement a Square::e5() for tests

This class doesn't implement en passant yet. It also doesn't yet have tests for
the bitboard stuff.
2023-12-31 11:44:47 -08:00
board [board] Implement a pawn move generator 2023-12-31 11:44:47 -08:00
explorer [explorer] A REPL-style command line app to fiddle with chess boards 2023-12-28 15:09:15 -07:00
.gitignore
Notes.md Add some notes 2023-12-22 08:51:18 -08:00