Chess Engine
A Chess Engine project written in C++.
Loading...
Searching...
No Matches
Piece Struct Reference

Classes

class  Iterator
class  Range

Public Types

enum  : uint8_t {
  W_PAWN = (Color::WHITE << PieceType::size()) | PieceType::PAWN , W_KNIGHT = (Color::WHITE << PieceType::size()) | PieceType::KNIGHT , W_BISHOP = (Color::WHITE << PieceType::size()) | PieceType::BISHOP , W_ROOK = (Color::WHITE << PieceType::size()) | PieceType::ROOK ,
  W_QUEEN = (Color::WHITE << PieceType::size()) | PieceType::QUEEN , W_KING = (Color::WHITE << PieceType::size()) | PieceType::KING , B_PAWN = (Color::BLACK << PieceType::size()) | PieceType::PAWN , B_KNIGHT = (Color::BLACK << PieceType::size()) | PieceType::KNIGHT ,
  B_BISHOP = (Color::BLACK << PieceType::size()) | PieceType::BISHOP , B_ROOK = (Color::BLACK << PieceType::size()) | PieceType::ROOK , B_QUEEN = (Color::BLACK << PieceType::size()) | PieceType::QUEEN , B_KING = (Color::BLACK << PieceType::size()) | PieceType::KING ,
  FIRST = W_PAWN , LAST = B_KING , NONE = 0b1111 , MASK = 0b1111 ,
  SIZE = 4 , NB = 12
}

Public Member Functions

constexpr Piece (uint8_t value=none())
constexpr Piece (PieceType pieceType, Color color)
constexpr Piece (char c)
constexpr uint8_t value () const
constexpr bool ok () const
constexpr Color color () const
constexpr Color pieceType () const
constexpr operator uint8_t ()
void print (std::ostream &os) const
char constexpr to_char () const

Static Public Member Functions

static constexpr Piece none ()
static constexpr uint8_t number ()
static constexpr uint8_t mask ()
static constexpr uint8_t size ()
static constexpr Piece first ()
static constexpr Piece last ()
static constexpr Range all ()

Static Public Attributes

static constexpr std::string_view pieceToChar = "PNBRQK pnbrqk"

Friends

std::ostream & operator<< (std::ostream &os, const Piece &obj)

The documentation for this struct was generated from the following file: