case class ChessBoard(grid: Vector[Option[ChessPiece]], turn: ChessPlayer = WhiteChessPlayer, enPassantPawn: Option[EnPassantPawn] = None, castlingAvailable: Map[(ChessPlayer, CastlingSide.Value), Boolean] = castlingFullyAvailable, fullMoveNumber: Int = 1, halfMoveClock: Int = 0, history: List[GameStep] = List()) extends Board[ChessBoard, ChessAction, ChessPiece, ChessPlayer, ChessOptimisations] with Product with Serializable
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- ChessBoard
- Serializable
- Serializable
- Product
- Equals
- Board
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new ChessBoard(grid: Vector[Option[ChessPiece]], turn: ChessPlayer = WhiteChessPlayer, enPassantPawn: Option[EnPassantPawn] = None, castlingAvailable: Map[(ChessPlayer, CastlingSide.Value), Boolean] = castlingFullyAvailable, fullMoveNumber: Int = 1, halfMoveClock: Int = 0, history: List[GameStep] = List())
Type Members
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def actionStream(implicit opts: ChessOptimisations = ChessOptimisations.default): Stream[ChessAction]
-
def
actions(implicit opts: ChessOptimisations = ChessOptimisations.default): Set[ChessAction]
- Definition Classes
- ChessBoard → Board
- lazy val allSerialisedPastBoardsFor3FR: List[String]
-
def
applyUpdate(grid: Vector[Option[ChessPiece]], update: (Int, Option[ChessPiece])): Vector[Option[ChessPiece]]
- Definition Classes
- Board
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
between(from: XY, to: XY)(implicit boardSize: BoardSize): Set[Location]
- Attributes
- protected
- Definition Classes
- Board
- lazy val bishops: Vector[♝]
- lazy val canClaimThreefoldRepetition: Boolean
- val castlingAvailable: Map[(ChessPlayer, CastlingSide.Value), Boolean]
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
doAction(a: ChessAction)(implicit opts: ChessOptimisations = ChessOptimisations.default): Option[ChessBoard]
- Definition Classes
- ChessBoard → Board
- def doAllActions(implicit opts: ChessOptimisations = ChessOptimisations.default): Set[ChessBoard]
- def doAllNonFinalActions(implicit opts: ChessOptimisations = ChessOptimisations.default): Set[ChessBoard]
- val enPassantPawn: Option[EnPassantPawn]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(any: Any): Boolean
- Definition Classes
- ChessBoard → Equals → AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- val fullMoveNumber: Int
- def game(implicit opts: ChessOptimisations = ChessOptimisations.default): ChessGame
-
def
get(pos: XY)(implicit boardSize: BoardSize): Location
- Definition Classes
- Board
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
val
grid: Vector[Option[ChessPiece]]
- Definition Classes
- ChessBoard → Board
- val halfMoveClock: Int
- lazy val hasInsufficientMaterial: Boolean
- val history: List[GameStep]
- def isDraw(implicit opts: ChessOptimisations = ChessOptimisations.default): Boolean
- def isDrawFor(player: ChessPlayer)(implicit opts: ChessOptimisations = ChessOptimisations.default): Boolean
-
def
isEmptyCell(l: Location): Boolean
- Definition Classes
- Board
-
def
isInBounds(l: Location): Boolean
- Definition Classes
- Board
- lazy val isInFiftyMoveRule: Boolean
- lazy val isInStalemate: Boolean
- lazy val isInThreefoldRepetition: Boolean
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isLoss(implicit opts: ChessOptimisations = ChessOptimisations.default): Boolean
- def isLossFor(player: ChessPlayer, basedOnCheckKnown: Boolean = false)(implicit opts: ChessOptimisations = ChessOptimisations.default): Boolean
-
def
isPiece(l: Location): Boolean
- Definition Classes
- Board
- lazy val kings: Vector[♚]
- lazy val knights: Vector[♞]
-
def
movementsOfDelta(from: XY, delta: XY)(implicit opts: ChessOptimisations = ChessOptimisations.default): Set[ChessAction]
- Definition Classes
- ChessBoard → Board
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def nonFinalActions(implicit opts: ChessOptimisations = ChessOptimisations.default): Set[ChessAction]
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- lazy val pawns: Vector[♟]
-
def
pieces: Vector[ChessPiece]
- Definition Classes
- Board
- lazy val queens: Vector[♛]
- lazy val rooks: Vector[♜]
- lazy val rotate: ChessBoard
- lazy val serialisedFor3FR: String
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- lazy val toFen: String
- lazy val toOstinatoString: String
- lazy val toShortFen: String
-
lazy val
toString: String
- Definition Classes
- ChessBoard → AnyRef → Any
- val turn: ChessPlayer
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
xyBetween(from: XY, to: XY)(implicit boardSize: BoardSize): Set[XY]
- Attributes
- protected
- Definition Classes
- Board