[−][src]Module rustenginelib::square
Structs
| MagicInfo | MagicInfo records the magic and shift for a square |
Enums
| Delta | Delta enum lists the possible deltas of chess pieces |
| MoveGenMode | 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 |
| 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 |
| 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
| DeltaBuffer | DeltaBuffer trait adds methods to various size buffers that hold deltas |
| SquareTrait | 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 |
| jump_attack | returns jump attack bitboard from deltas |
| king_mobility | returns king mobility |
| knight_mobility | returns knight 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 Definitions
| AttackTable | 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 |
| 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 |