style: implement clang-format styling parameters
This commit is contained in:
parent
10a4dcb60b
commit
f2ce83335c
10 changed files with 462 additions and 547 deletions
|
|
@ -22,34 +22,24 @@
|
|||
* it helps make it obvious what certain bits of code are doing.
|
||||
*/
|
||||
|
||||
#include <cstdint>
|
||||
#include <algorithm>
|
||||
#include <utility>
|
||||
#include <string>
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
class Board;
|
||||
|
||||
enum PieceType {
|
||||
PAWN, BISHOP, KNIGHT, ROOK, QUEEN, KING, EMPTY
|
||||
};
|
||||
enum PieceType { PAWN, BISHOP, KNIGHT, ROOK, QUEEN, KING, EMPTY };
|
||||
|
||||
enum PieceColour {
|
||||
PIECE_WHITE, PIECE_BLACK, PIECE_EMPTY
|
||||
};
|
||||
enum PieceColour { PIECE_WHITE, PIECE_BLACK, PIECE_EMPTY };
|
||||
|
||||
enum Rank {
|
||||
R1 = 0, R2 = 1, R3 = 2, R4 = 3, R5 = 4, R6 = 5, R7 = 6, R8 = 7, INVALID_RANK = 255
|
||||
};
|
||||
enum Rank { R1 = 0, R2 = 1, R3 = 2, R4 = 3, R5 = 4, R6 = 5, R7 = 6, R8 = 7, INVALID_RANK = 255 };
|
||||
|
||||
enum File {
|
||||
A = 0, B = 1, C = 2, D = 3, E = 4, F = 5, G = 6, H = 7, INVALID_FILE = 255
|
||||
};
|
||||
enum File { A = 0, B = 1, C = 2, D = 3, E = 4, F = 5, G = 6, H = 7, INVALID_FILE = 255 };
|
||||
|
||||
enum CastleSide {
|
||||
KINGSIDE = 1, QUEENSIDE = 2
|
||||
};
|
||||
enum CastleSide { KINGSIDE = 1, QUEENSIDE = 2 };
|
||||
|
||||
/** @struct Square
|
||||
* A struct that represents a square on the chess board.
|
||||
|
|
@ -62,9 +52,7 @@ struct Square {
|
|||
* A function to test if the square is a valid square on the chessboard
|
||||
* @return True if the square is within the chessboard, False otherwise
|
||||
*/
|
||||
bool isValid() const {
|
||||
return rank >= 0 && rank < 8 && file >= 0 && file < 8;
|
||||
}
|
||||
bool isValid() const { return rank >= 0 && rank < 8 && file >= 0 && file < 8; }
|
||||
};
|
||||
/** @struct Move
|
||||
* A struct representing the start and end squares of a Move.
|
||||
|
|
@ -84,40 +72,28 @@ struct Move {
|
|||
class Piece {
|
||||
private:
|
||||
friend class Board;
|
||||
|
||||
protected:
|
||||
PieceColour colour;
|
||||
PieceType pieceType;
|
||||
std::string pieceName; /**< std::string pieceName is a string showing the full name of the piece, i.e. "PAWN" */
|
||||
std::string
|
||||
pieceSymbol; /**< std::string pieceSymbol is a single character, using the standard algebraic chess notation, ie N for Knight */
|
||||
std::string pieceName; /**< std::string pieceName is a string showing the full name of the piece, i.e. "PAWN" */
|
||||
std::string pieceSymbol; /**< std::string pieceSymbol is a single character, using the standard algebraic chess
|
||||
notation, ie N for Knight */
|
||||
bool hasMoved = false;
|
||||
|
||||
public:
|
||||
|
||||
Piece(PieceColour pColour) : colour(pColour) {
|
||||
}
|
||||
Piece(PieceColour pColour) : colour(pColour) {}
|
||||
virtual ~Piece();
|
||||
|
||||
PieceColour getColour() const { return colour; }
|
||||
|
||||
PieceColour getColour() const {
|
||||
return colour;
|
||||
}
|
||||
std::string getPieceName() const { return pieceName; }
|
||||
|
||||
std::string getPieceName() const {
|
||||
return pieceName;
|
||||
}
|
||||
std::string getPieceSymbol() const { return pieceSymbol; }
|
||||
|
||||
std::string getPieceSymbol() const {
|
||||
return pieceSymbol;
|
||||
}
|
||||
PieceType getPieceType() const { return pieceType; }
|
||||
|
||||
PieceType getPieceType() const {
|
||||
return pieceType;
|
||||
}
|
||||
|
||||
bool checkIfMoved() const {
|
||||
return hasMoved;
|
||||
}
|
||||
bool checkIfMoved() const { return hasMoved; }
|
||||
/**
|
||||
* A virtual const function that should get all legal moves for a piece, but it may
|
||||
* include some moves that need to be pruned, like those exposing the king to check.
|
||||
|
|
@ -130,14 +106,13 @@ class Piece {
|
|||
virtual std::vector<Move> getLegalMoves(const Square &from, Board &board) const;
|
||||
|
||||
bool finalMoveChecks(std::vector<Move> *moveList, Board &board);
|
||||
|
||||
};
|
||||
|
||||
class King : public Piece {
|
||||
private:
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
King(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "King";
|
||||
pieceSymbol = "K";
|
||||
|
|
@ -156,12 +131,9 @@ class King : public Piece {
|
|||
return false;
|
||||
}
|
||||
|
||||
void setCastleQS(bool canCastle) {
|
||||
canCastleQS = canCastle;
|
||||
}
|
||||
void setCastleKS(bool canCastle) {
|
||||
canCastleKS = canCastle;
|
||||
}
|
||||
void setCastleQS(bool canCastle) { canCastleQS = canCastle; }
|
||||
void setCastleKS(bool canCastle) { canCastleKS = canCastle; }
|
||||
|
||||
protected:
|
||||
bool canCastleQS = true;
|
||||
bool canCastleKS = true;
|
||||
|
|
@ -170,8 +142,8 @@ class King : public Piece {
|
|||
|
||||
class Rook : public Piece {
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
Rook(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "Rook";
|
||||
pieceSymbol = "R";
|
||||
|
|
@ -182,8 +154,8 @@ class Rook : public Piece {
|
|||
|
||||
class Queen : public Piece {
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
Queen(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "Queen";
|
||||
pieceSymbol = "Q";
|
||||
|
|
@ -194,8 +166,8 @@ class Queen : public Piece {
|
|||
|
||||
class Knight : public Piece {
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
Knight(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "Knight";
|
||||
pieceSymbol = "N";
|
||||
|
|
@ -206,8 +178,8 @@ class Knight : public Piece {
|
|||
|
||||
class Bishop : public Piece {
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
Bishop(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "Bishop";
|
||||
pieceSymbol = "B";
|
||||
|
|
@ -218,8 +190,8 @@ class Bishop : public Piece {
|
|||
|
||||
class Pawn : public Piece {
|
||||
friend class Board;
|
||||
public:
|
||||
|
||||
public:
|
||||
Pawn(PieceColour colour) : Piece(colour) {
|
||||
pieceName = "Pawn";
|
||||
pieceSymbol = "P";
|
||||
|
|
@ -227,8 +199,8 @@ class Pawn : public Piece {
|
|||
}
|
||||
virtual std::vector<Move> getLegalMoves(const Square &from, Board &board) const override;
|
||||
void promote(const Square &promotionSquare, Board &board, PieceType promoteTo);
|
||||
|
||||
protected:
|
||||
bool firstMove = true;
|
||||
};
|
||||
#endif // PIECE_HPP
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue