Crate game_chess_core[][src]

Expand description

Implement mechanics of the game chess.

Structs

Game board

Represents a singular square of a chessboard.

A BitBoard is simply a 64 bit long integer where each bit maps to a specific square. Used for mapping occupancy, where ‘1’ represents a piece being at that index’s square, and a ‘0’ represents a lack of a piece.

Interface for playing chess game.

Contains information about move made in the past. Field fen contains representation of the board as FEN string Field uci_move contains move in UCI format

Represents a singular move.

This is the list of possible moves for a current position. Think of it alike a faster version of Vec<BitMove>, as all the data is stored in the Stack rather than the Heap.

Struct to allow fast lookups for any square. Given a square, allows for determining if there is a piece currently there, and if so, allows for determining it’s color and type of piece.

Enums

Status of the game

A Subset of MoveFlag, used to determine the overall classification of a move.

All possible Types of Pieces on a chessboard, for both colors.

All possible Types of Pieces on a chessboard.

Enum to represent the Players White & Black.

Type Definitions

Positions on the board in FEN format