Safe Haskell | None |
---|---|
Language | Haskell2010 |
AUTHOR
- Dr. Alistair Ward
DESCRIPTION
- Implements various move-notations Chess-notation.
Synopsis
- class ShowNotation a where
- showsNotation :: MoveNotation -> a -> ShowS
- class ShowNotationFloat a where
- showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> a -> ShowS
- data MoveNotation
- tag :: String
- coordinate :: MoveNotation
- range :: [MoveNotation]
- readsQualifiedMove :: (Enum x, Enum y, Ord x, Ord y) => MoveNotation -> ReadS (EitherQualifiedMove x y)
- showNotation :: ShowNotation a => MoveNotation -> a -> String
- showsMoveSyntax :: MoveNotation -> ShowS
- getOrigin :: MoveNotation -> (Int, Int)
- showsNotationFloatToNDecimals :: ShowNotationFloat a => MoveNotation -> NDecimalDigits -> a -> ShowS
- isCoordinate :: MoveNotation -> Bool
Type-classes
class ShowNotation a where Source #
An interface for types which can be rendered in a chess-notation.
showsNotation :: MoveNotation -> a -> ShowS Source #
Instances
(Enum x, Enum y) => ShowNotation (Coordinates x y) Source # | |
Defined in BishBosh.Notation.MoveNotation showsNotation :: MoveNotation -> Coordinates x y -> ShowS Source # | |
(Enum x, Enum y) => ShowNotation (QualifiedMove x y) Source # | |
Defined in BishBosh.Notation.MoveNotation showsNotation :: MoveNotation -> QualifiedMove x y -> ShowS Source # | |
(Enum x, Enum y) => ShowNotation (Turn x y) Source # | |
Defined in BishBosh.Notation.MoveNotation showsNotation :: MoveNotation -> Turn x y -> ShowS Source # | |
(Enum x, Enum y) => ShowNotation (GameTree x y) Source # | |
Defined in BishBosh.Model.GameTree showsNotation :: MoveNotation -> GameTree x y -> ShowS Source # | |
(Enum x, Enum y) => ShowNotation (QualifiedMoveForest x y) Source # | |
Defined in BishBosh.ContextualNotation.QualifiedMoveForest showsNotation :: MoveNotation -> QualifiedMoveForest x y -> ShowS Source # |
class ShowNotationFloat a where Source #
An alternative to ShowFloat
, which permits access to a specific move-notation.
showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> a -> ShowS Source #
Instances
(Enum x, Enum y, Real criterionValue, Real weightedMean) => ShowNotationFloat (QuantifiedGame x y criterionValue weightedMean) Source # | |
Defined in BishBosh.Evaluation.QuantifiedGame showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> QuantifiedGame x y criterionValue weightedMean -> ShowS Source # | |
(Enum x, Enum y, Real weightedMean) => ShowNotationFloat (PositionHashQuantifiedGameTree x y positionHash criterionValue weightedMean) Source # | |
Defined in BishBosh.Evaluation.PositionHashQuantifiedGameTree showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> PositionHashQuantifiedGameTree x y positionHash criterionValue weightedMean -> ShowS Source # | |
(Enum x, Enum y, Real weightedMean) => ShowNotationFloat (NodeLabel x y positionHash criterionValue weightedMean) Source # | |
Defined in BishBosh.Evaluation.PositionHashQuantifiedGameTree showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> NodeLabel x y positionHash criterionValue weightedMean -> ShowS Source # | |
(Enum x, Enum y, Real criterionValue, Real weightedMean) => ShowNotationFloat (Result x y positionHash criterionValue weightedMean) Source # | |
Defined in BishBosh.Search.Search showsNotationFloat :: MoveNotation -> (Double -> ShowS) -> Result x y positionHash criterionValue weightedMean -> ShowS Source # |
Types
Data-types
data MoveNotation Source #
- Identifies the move-notations which can be used.
- Standard Algebraic isn't included here because conversion to or from a QualifiedMove requires access to the game.
Instances
Eq MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation (==) :: MoveNotation -> MoveNotation -> Bool # (/=) :: MoveNotation -> MoveNotation -> Bool # | |
Read MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation readsPrec :: Int -> ReadS MoveNotation # readList :: ReadS [MoveNotation] # | |
Show MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation showsPrec :: Int -> MoveNotation -> ShowS # show :: MoveNotation -> String # showList :: [MoveNotation] -> ShowS # | |
NFData MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation rnf :: MoveNotation -> () # | |
Default MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation def :: MoveNotation # | |
XmlPickler MoveNotation Source # | |
Defined in BishBosh.Notation.MoveNotation xpickle :: PU MoveNotation # |
Constants
coordinate :: MoveNotation Source #
Constant.
range :: [MoveNotation] Source #
The constant complete range of values.
Functions
readsQualifiedMove :: (Enum x, Enum y, Ord x, Ord y) => MoveNotation -> ReadS (EitherQualifiedMove x y) Source #
Reads a move & move-type from the specified MoveNotation
.
showNotation :: ShowNotation a => MoveNotation -> a -> String Source #
Show an arbitrary datum using the specified notation.
showsMoveSyntax :: MoveNotation -> ShowS Source #
Show the syntax required by a specific MoveNotation
.
getOrigin :: MoveNotation -> (Int, Int) Source #
Returns the origin of the specified coordinate-system.
showsNotationFloatToNDecimals :: ShowNotationFloat a => MoveNotation -> NDecimalDigits -> a -> ShowS Source #
Render the specified data in the specified notation, & to the specified number of decimal digits.
Predicates
isCoordinate :: MoveNotation -> Bool Source #
Predicate.