Crate ataxx

Source

Macros§

bitboard
bitboard is a macro which allows creation of BitBoard values from their graphical representation with (.)s and (X)s inside the macro call.

Structs§

BitBoard
BitBoard represents a set of squares as a 64 bit bitset. A BitBoard contains a Square if the 1 << square as usize bit is set in the BitBoard.
FileIter
An iterator over the variants of File
Hash
Hash represents the semi-unique checksum of a Position used to efficiently check for Position equality. Some properties of a Hash include determinism, uniform distribution, avalanche effect, and collision resistance.
Move
Move represents an Ataxx move which can be played on the Board.
MoveList
MoveList is a basic implementation of MoveStore that is used to allow users to utilize move-generation methods without having to implement a MoveStore by themselves. It also has utility methods other than the MoveStore trait.
MoveListIterator
MoveListIterator implements an Iterator for a MoveList.
Position
Position represents the snapshot of an Ataxx Board, the state of the an ataxx game at a single point in time. It also provides all of the methods necessary to manipulate such a snapshot.
RankIter
An iterator over the variants of Rank
SquareIter
An iterator over the variants of Square

Enums§

File
File represents a file on the Ataxx Board. Each vertical column of Squares on an Ataxx Board is known as a File. There are 7 of them in total.
FileParseError
FileParseError represents the various errors that can be encountered while parsing a given string into a File.
MoveParseError
Piece
Piece represents all the possible pieces that an ataxx piece can have, specifically Black, White, and None(no Piece/no piece).
PieceParseError
PositionParseError
PositionParseErr represents an error encountered while parsing the given FEN position field into a valid Position.
Rank
Rank represents a rank on the Ataxx Board. Each horizontal row of Squares on an Ataxx Board is known as a Rank. There are 7 of them in total.
RankParseError
RankParseError represents the various errors that can be encountered while parsing a given string into a Rank.
Square
Square represents all the squares present on an Ataxx Board. The index of each Square is equal to rank-index * 8 + file-index.
SquareParseError
SquareParseError represents the various errors that can be encountered while parsing a given string into a Square.

Traits§

MoveStore
MoveStore is a trait implemented by types which are able to store Moves inside themselves and are thus usable in move-generation methods in Position like Position::generate_moves_into<T>.

Functions§

perft
perft is a function to walk the move generation tree of strictly legal moves to count all the leaf nodes of a certain depth.