bishbosh-0.1.2.0: Plays chess.
Safe HaskellNone
LanguageHaskell2010

BishBosh.StateProperty.Hashable

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
  • Defines the random-numbers required to construct a hash of a chess-position.
  • Facilitates the construction of a hash from arbitrary data.
Synopsis

Type-classes

class Hashable hashable where Source #

An interface to which hashable data can conform.

Methods

listRandoms :: hashable -> Zobrist positionHash -> [positionHash] Source #

Instances

Instances details
Hashable MaybePieceByCoordinates Source # 
Instance details

Defined in BishBosh.State.MaybePieceByCoordinates

Methods

listRandoms :: MaybePieceByCoordinates -> Zobrist positionHash -> [positionHash] Source #

Hashable EnPassantAbscissa Source # 
Instance details

Defined in BishBosh.State.EnPassantAbscissa

Methods

listRandoms :: EnPassantAbscissa -> Zobrist positionHash -> [positionHash] Source #

Hashable CoordinatesByRankByLogicalColour Source # 
Instance details

Defined in BishBosh.State.CoordinatesByRankByLogicalColour

Methods

listRandoms :: CoordinatesByRankByLogicalColour -> Zobrist positionHash -> [positionHash] Source #

Hashable Board Source # 
Instance details

Defined in BishBosh.State.Board

Methods

listRandoms :: Board -> Zobrist positionHash -> [positionHash] Source #

Hashable CastleableRooksByLogicalColour Source #

Get the list of random numbers required to represent the current castling potential.

Instance details

Defined in BishBosh.State.CastleableRooksByLogicalColour

Methods

listRandoms :: CastleableRooksByLogicalColour -> Zobrist positionHash -> [positionHash] Source #

Hashable Position Source # 
Instance details

Defined in BishBosh.State.Position

Methods

listRandoms :: Position -> Zobrist positionHash -> [positionHash] Source #

Hashable Game Source # 
Instance details

Defined in BishBosh.Model.Game

Methods

listRandoms :: Game -> Zobrist positionHash -> [positionHash] Source #

Constants

Functions

hash :: (Bits positionHash, Hashable hashable) => hashable -> Zobrist positionHash -> positionHash Source #

Resolve a hashable into a hash.

combine :: Bits positionHash => positionHash -> [positionHash] -> positionHash Source #

Include a list of random numbers in the hash.