[Piece] Add fromValue

This commit is contained in:
2022-12-21 10:41:46 +01:00
parent c510b30f55
commit 123e473a53
4 changed files with 13 additions and 9 deletions

View File

@@ -27,6 +27,7 @@ public:
Piece(PieceColor color, PieceType type);
static Optional fromSymbol(char symbol);
static Optional fromValue(unsigned value);
static std::optional<PieceType> pieceTypeFromSymbol(char symbol);
@@ -38,6 +39,14 @@ public:
private:
const PieceColor mColor;
const PieceType mType;
static inline PieceColor valToColor(unsigned v) {
return static_cast<PieceColor>(v % 2);
}
static inline PieceType valToType(unsigned v) {
return static_cast<PieceType>(v - (v % 2));
}
};
bool operator==(const Piece &lhs, const Piece &rhs);