Commit graph

515 commits

Author SHA1 Message Date
9bcd0b2148 [board] Add neighbor and piece modules
Add a Direction enum in the neighbor module
Add Color and PieceShape enums, and a Piece struct to the piece module
2023-12-23 09:18:07 -07:00
70d8034e4e [board] Inline BitAnd, BitOr, and Not BitBoard methods; remove an unused import 2023-12-23 09:17:07 -07:00
0838f4fd01 [board] Add a Not impl for BitBoard
This trait implements bitwise NOT
2023-12-23 09:16:32 -07:00
42d231435e Add some notes 2023-12-22 08:51:18 -08:00
6af64171a2 [board] Implement BitAnd and BitOr on BitBoard and make it's u64 private 2023-12-22 08:50:03 -08:00
aa7e901241 [board] Add remove_piece_at() method to BitBoard 2023-12-21 08:30:48 -08:00
ed9a919db6 [board] Add a "count leading zeros" implementation for ARM machines
Call the `clz` instruction on the bitboard via `asm!`.
2023-12-21 08:17:17 -08:00
4eb734d3eb [board] Some basic bit operations for bitboards 2023-12-21 08:17:06 -08:00
0a42adf1fa [board] Re-do the Square implementation
- Rank and file are 0-indexed values
- Add an index property, a 1D index into an array
- Add from_index() and from_algebraic_string()
2023-12-21 08:15:51 -08:00
d776bd18e2 [board] Move bitboard lib to "board" 2023-12-20 11:45:55 -08:00
ab55a7994c [bitboard] Implement a Square type; fix all the build issues after adding a mod line to lib.rs 2023-12-20 11:45:12 -08:00
d080ddc735 Ignore the target/ directory 2023-12-19 11:13:41 -08:00
567cb8d787 [bitboard] Commit the lock file 2023-12-19 11:13:20 -08:00
ebed5c05ed [bitboard] Add a BitBoard and a Position struct 2023-12-19 11:13:06 -08:00
8fd01e4f11 Add bitboard Rust library 2023-12-19 10:32:26 -08:00