Structs§
- Magic
Info - MagicInfo records the magic and shift for a square
- Pawn
Info - PawnInfo struct records the possible move and ep related squares of pawns
Enums§
- Delta
- Delta enum lists the possible deltas of chess pieces
- Move
GenMode - MoveGenNode lists the move generation modes
Statics§
- BISHOP_
ATTACK - BISHOP_ATTACK is the attack table of bishop
- BISHOP_
MAGIC_ ATTACK - BISHOP_MAGIC_ATTACK is the magic attack table of bishop
- KING_
AREA - KING_AREA is the attack table of king plus king square
- KING_
ATTACK - KING_ATTACK is the attack table of king
- KNIGHT_
ATTACK - KNIGHT_ATTACK is the attack table of knight
- LANCER_
ATTACKS - LANCER_ATTACKS is are attack tables of lancers
- MAGIC_
LOOKUP_ BISHOP - MAGIC_LOOKUP_BISHOP is the magic lookup table for bishop
- MAGIC_
LOOKUP_ ROOK - MAGIC_LOOKUP_ROOK is the magic lookup table for rook
- PAWN_
INFOS - PAWN_INFOS records PawnInfo for color and square
- QUEEN_
ATTACK - QUEEN_ATTACK is the attack table of queen
- ROOK_
ATTACK - ROOK_ATTACK is the attack table of rook
- ROOK_
MAGIC_ ATTACK - ROOK_MAGIC_ATTACK is the magic attack table of rook
Traits§
- Delta
Buffer - DeltaBuffer trait adds methods to various size buffers that holds deltas
- Move
Trait - MoveTrait adds methods to Move
- Square
Trait - Square trait adds methods to a Square
Functions§
- bishop_
mobility - returns bishop mobility
- create_
magic_ lookup_ table - create magic lookup table
- detect_
collision - detects collision of a magic applied to a mobility, returns true if there is a collision, false otherwise
- find_
and_ log_ magics - find and log all magics
- find_
magic_ and_ shift - tries to find magic and shift in certain number of tries per shift for a mobility, starting from a maximum shift, going to minimum shift, returns a tuple of the found magic and a bool indicating success
- find_
magic_ for_ shift - tries to find magic for shift in certain number of tries for a mobility, returns a tuple of the found magic and a bool indicating success
- get_
jump_ mobility - returns jump mobility
- get_
sliding_ mobility - returns sliding mobility
- jailer_
mobility - returns jailer mobility
- jump_
attack - returns jump attack bitboard from deltas
- king_
mobility - returns king mobility
- knight_
mobility - returns knight mobility
- lancer_
mobility - returns lancer mobility
- log_
find_ magic_ and_ shift - find and log magic and shift
- magic_
attack - return magic attack for an attack
- mobility_
index - returns index of mobility in mobility table for a magic and shift
- new_
magic - returns a random magic
- queen_
mobility - returns queen mobility
- rank_
file - constructs a Square from rank and file
- rook_
mobility - returns rook mobility
- sliding_
attack - returns sliding attack bitboard from deltas
- total_
magic_ space - returns the total number of magic look up table items
- translate_
mask_ to_ occupancy - translates an occupancy mask to partial occupancy of a mobility
Type Aliases§
- Attack
Table - AttackTable type records an attack bitboard for every square of a chess board
- File
- Rank type represents the file of a square as an unsigned int
- Move
- Move type represents a chess move
- Rank
- Rank type represents the rank of a square as an unsigned int
- Square
- Square type represents a square of a chess board as an unsigned int