-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A simple chess move generation library
@package chessIO
@version 0.0.0.0
-- | A small collection of data types and functions to represent Chess
-- positions and moves including move generation and parsing from
-- external sources.
--
-- This module does deliberately not implement any search or evaluation
-- functionality. It is intended to be used to lay the ground for
-- communicating with other programs or players, hence the package name
-- chessIO.
module Game.Chess
data Position
-- | The starting position as given by the FEN string
-- "rnbqkbnrpppppppp8888PPPPPPPP/RNBQKBNR w KQkq - 0
-- 1".
startpos :: Position
-- | Construct a position from Forsyth-Edwards-Notation.
fromFEN :: String -> Maybe Position
-- | Convert a position to Forsyth-Edwards-Notation.
toFEN :: Position -> String
data Move
-- | Parse a move in the format used by the Universal Chess Interface
-- protocol.
fromUCI :: String -> Maybe Move
-- | Convert a move to the format used by the Universal Chess Interface
-- protocol.
toUCI :: Move -> String
-- | Validate that a certain move is legal in the given position.
relativeTo :: Position -> Move -> Maybe Move
moves :: Position -> [Move]
applyMove :: Position -> Move -> Position
instance GHC.Show.Show Game.Chess.Direction
instance GHC.Classes.Eq Game.Chess.Direction
instance GHC.Classes.Eq Game.Chess.Move
instance GHC.Classes.Eq Game.Chess.Position
instance GHC.Show.Show Game.Chess.BB
instance GHC.Classes.Eq Game.Chess.BB
instance GHC.Show.Show Game.Chess.Castling
instance GHC.Classes.Ord Game.Chess.Castling
instance GHC.Classes.Eq Game.Chess.Castling
instance GHC.Show.Show Game.Chess.Sq
instance GHC.Classes.Eq Game.Chess.Sq
instance GHC.Enum.Enum Game.Chess.Sq
instance GHC.Enum.Bounded Game.Chess.Sq
instance GHC.Show.Show Game.Chess.Piece
instance GHC.Classes.Eq Game.Chess.Piece
instance GHC.Show.Show Game.Chess.Color
instance GHC.Classes.Ord Game.Chess.Color
instance GHC.Classes.Eq Game.Chess.Color
instance GHC.Show.Show Game.Chess.PieceType
instance GHC.Classes.Eq Game.Chess.PieceType