Commit graph

72 commits

Author SHA1 Message Date
Bruno BELANYI 057b383f8c Add 'Bitboard::is_empty' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 0dde0d5dbd Add 'Direction::slide_{square,board}' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 896f615bba Add 'Bitboard::{ANTI_,}DIAGONAL' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 8e92bc2370 Add 'Direction::move_square' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 52d3974063 Add 'Direction::iter_{rook,bishop,royalty,knight}' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 8b27d302d7 Add 'Direction::move_board'
Encapsulates the way to move a piece on a board, avoiding the need to
mask and shift by hand.
2022-07-18 00:33:24 +02:00
Bruno BELANYI 4e98678ccd Add 'board::Direction' enum 2022-07-18 00:33:24 +02:00
Bruno BELANYI e8b5c9f73c Use 'Square::index' in 'Square::{file,rank}_index' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 17b8ee5eb3 Add 'Square::index' 2022-07-18 00:33:24 +02:00
Bruno BELANYI 61e7a4e8d1 Add 'Bitboard::count' 2022-07-18 00:33:24 +02:00
Bruno BELANYI db0a7e9f60 Add 'Rank::{up,down}' 2022-07-17 21:26:03 +02:00
Bruno BELANYI 63228c2d9e Add 'File::{left,right}' 2022-07-17 21:26:03 +02:00
Bruno BELANYI 87473908cf Add 'Square' constructor from 'File', 'Rank' 2022-07-17 21:26:03 +02:00
Bruno BELANYI 77b15edc36 Don't return 'Bitboard' from 'Square::{file,rank}' 2022-07-17 21:26:03 +02:00
Bruno BELANYI bb04368f41 Add 'File' enum 2022-07-16 14:41:07 +02:00
Bruno BELANYI 4eff49f367 Add 'Rank' enum 2022-07-16 14:41:07 +02:00
Bruno BELANYI 41903be143 Introduce 'Bitboard::ALL' 2022-07-16 14:41:07 +02:00
Bruno BELANYI 3c157efe84 Add bitboard iteration
Introduce 'BitboardIterator', use it to implement 'IntoIterator' for
'Bitboard'.
2022-07-16 14:41:07 +02:00
Bruno BELANYI 4bc597439e Move 'board::bitboard' into folder module
I will be adding a 'BitboardIterator' type, and it makes more sense to
use a folder for this module at this point.
2022-07-16 14:41:07 +02:00
Bruno BELANYI 755e891b17 Add 'Bitboard' and 'Square' definitions 2022-07-16 14:41:07 +02:00
Bruno BELANYI 2c36ee266d Move binary crate into 'bin' folder 2022-07-15 21:32:39 +02:00
Bruno BELANYI 2ad2927b14 Bootstrap build system 2022-07-15 19:56:01 +02:00