src/nimchess/movegen

Source   Edit  

Procs

func generateCaptures(position: Position; moves: var openArray[Move]): int {.
    ...raises: [], tags: [], forbids: [].}
Generates pseudo-legal capture moves and writes the into the moves array, starting from index 0. This function will silently stop generating moves if the moves array fills up. Source   Edit  
func generateMoves(position: Position; moves: var openArray[Move]): int {.
    ...raises: [], tags: [], forbids: [].}
Generates pseudo-legal moves and writes the into the moves array, starting from index 0. This function will silently stop generating moves if the moves array fills up. Source   Edit  
func generateQuiets(position: Position; moves: var openArray[Move]): int {.
    ...raises: [], tags: [], forbids: [].}
Generates pseudo-legal quiet moves and writes the into the moves array, starting from index 0. This function will silently stop generating moves if the moves array fills up. Source   Edit  
func isMate(position: Position): bool {....raises: [Exception], tags: [RootEffect],
                                        forbids: [].}
Source   Edit  
func isStalemate(position: Position): bool {....raises: [Exception],
    tags: [RootEffect], forbids: [].}
Source   Edit  
func legalMoves(position: Position): seq[Move] {....raises: [Exception],
    tags: [RootEffect], forbids: [].}
Source   Edit  

Exports

down, isChess960, ==, setZobristKeys, zobristKeysAreOk, ==, isUpperEdge, [], attackers, newSquare, homeRank, $, left, boardString, toBitboard, mirrorHorizontally, removePiece, attacksFrom, countSetBits, coloredPieceAt, attackMask, opposite, notation, up, mask5x5, fileNumber, CastlingSide, up, mirrorHorizontally, rank, occupancy, |=, toSquare, right, mirrorVertically, inCheck, ~, $, squareDistance, calculateZobristKeys, Bitboard, empty, Piece, addPiece, down, pieceAt, up, mirrorVertically, [], ZobristKey, isEdge, ^=, [], attackMaskPawnCapture, file, ColoredPiece, mirrorHorizontally, shr, []=, isLowerEdge, Position, mask3x3, right, mirrorVertically, colorAt, [], xor, squareManhattanDistance, currentFullmoveNumber, left, [], toColoredPiece, Square, movePiece, enemy, isRightEdge, addColoredPiece, attackMaskPawnQuiet, []=, not, &=, and, isSet, attacksFrom, kingSquare, isAttacked, isLeftEdge, shl, or, items, isPassedMask, [], rankNumber, notation, up, Color, promoted, isChess960, zobristKeysAreOk, ==, [], newSquare, doMove, castlingSide, boardString, toBitboard, ==, mirrorHorizontally, isEnPassantCapture, mirrorVertically, noMove, []=, []=, fileNumber, up, [], or, isEdge, Bitboard, [], attackMaskPawnCapture, ColoredPiece, shr, moved, isLowerEdge, setZobristKeys, $, right, colorAt, isPassedMask, isRightEdge, Square, doNullMove, captured, attackMaskPawnQuiet, and, enPassantTargetSquare, isSet, opposite, inCheck, $, [], isNoMove, mirrorHorizontally, down, isUpperEdge, attackers, homeRank, left, [], attacksFrom, attackMask, notation, mask5x5, CastlingSide, up, mirrorHorizontally, rank, occupancy, |=, ==, toSquare, right, source, ~, target, $, squareDistance, calculateZobristKeys, empty, Piece, addPiece, down, pieceAt, coloredPieceAt, mirrorVertically, ^=, Position, file, isLegal, isLeftEdge, mask3x3, removePiece, [], xor, squareManhattanDistance, currentFullmoveNumber, left, toColoredPiece, isCapture, movePiece, enemy, Color, isPseudoLegal, addColoredPiece, Move, not, &=, isCastling, attacksFrom, kingSquare, countSetBits, up, isAttacked, newMove, shl, ZobristKey, items, isTactical, mirrorVertically, notation, up, rankNumber