1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00

Retire Position::color_of_piece_on()

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2011-06-26 10:37:13 +01:00
parent a9782b94e6
commit 923b14afaa
3 changed files with 14 additions and 19 deletions

View file

@ -265,7 +265,7 @@ MoveStack* generate<MV_EVASION>(const Position& pos, MoveStack* mlist) {
checkersCnt++; checkersCnt++;
checksq = pop_1st_bit(&b); checksq = pop_1st_bit(&b);
assert(pos.color_of_piece_on(checksq) == opposite_color(us)); assert(color_of_piece(pos.piece_on(checksq)) == opposite_color(us));
switch (type_of_piece(pos.piece_on(checksq))) switch (type_of_piece(pos.piece_on(checksq)))
{ {

View file

@ -366,7 +366,7 @@ void Position::print(Move move) const {
if (move) if (move)
{ {
Position p(*this, thread()); Position p(*this, thread());
string dd = (color_of_piece_on(move_from(move)) == BLACK ? ".." : ""); string dd = (color_of_piece(piece_on(move_from(move))) == BLACK ? ".." : "");
cout << "\nMove is: " << dd << move_to_san(p, move); cout << "\nMove is: " << dd << move_to_san(p, move);
} }
@ -381,7 +381,7 @@ void Position::print(Move move) const {
if (piece == PIECE_NONE && square_color(sq) == DARK) if (piece == PIECE_NONE && square_color(sq) == DARK)
piece = PIECE_NONE_DARK_SQ; piece = PIECE_NONE_DARK_SQ;
char c = (color_of_piece_on(sq) == BLACK ? '=' : ' '); char c = (color_of_piece(piece_on(sq)) == BLACK ? '=' : ' ');
cout << c << PieceToChar[piece] << c << '|'; cout << c << PieceToChar[piece] << c << '|';
} }
} }
@ -520,7 +520,7 @@ bool Position::move_attacks_square(Move m, Square s) const {
do_move_bb(&occ, make_move_bb(f, t)); do_move_bb(&occ, make_move_bb(f, t));
xray = ( (rook_attacks_bb(s, occ) & pieces(ROOK, QUEEN)) xray = ( (rook_attacks_bb(s, occ) & pieces(ROOK, QUEEN))
|(bishop_attacks_bb(s, occ) & pieces(BISHOP, QUEEN))) |(bishop_attacks_bb(s, occ) & pieces(BISHOP, QUEEN)))
& pieces_of_color(color_of_piece_on(f)); & pieces_of_color(color_of_piece(piece_on(f)));
// If we have attacks we need to verify that are caused by our move // If we have attacks we need to verify that are caused by our move
// and are not already existent ones. // and are not already existent ones.
@ -552,7 +552,7 @@ bool Position::pl_move_is_legal(Move m, Bitboard pinned) const {
Color us = side_to_move(); Color us = side_to_move();
Square from = move_from(m); Square from = move_from(m);
assert(color_of_piece_on(from) == us); assert(color_of_piece(piece_on(from)) == us);
assert(piece_on(king_square(us)) == make_piece(us, KING)); assert(piece_on(king_square(us)) == make_piece(us, KING));
// En passant captures are a tricky special case. Because they are // En passant captures are a tricky special case. Because they are
@ -640,7 +640,7 @@ bool Position::move_is_pl(const Move m) const {
return false; return false;
// The destination square cannot be occupied by a friendly piece // The destination square cannot be occupied by a friendly piece
if (color_of_piece_on(to) == us) if (color_of_piece(piece_on(to)) == us)
return false; return false;
// Handle the special case of a pawn move // Handle the special case of a pawn move
@ -666,7 +666,7 @@ bool Position::move_is_pl(const Move m) const {
case DELTA_SE: case DELTA_SE:
// Capture. The destination square must be occupied by an enemy // Capture. The destination square must be occupied by an enemy
// piece (en passant captures was handled earlier). // piece (en passant captures was handled earlier).
if (color_of_piece_on(to) != them) if (color_of_piece(piece_on(to)) != them)
return false; return false;
// From and to files must be one file apart, avoids a7h5 // From and to files must be one file apart, avoids a7h5
@ -745,7 +745,7 @@ bool Position::move_gives_check(Move m, const CheckInfo& ci) const {
assert(is_ok()); assert(is_ok());
assert(move_is_ok(m)); assert(move_is_ok(m));
assert(ci.dcCandidates == discovered_check_candidates(side_to_move())); assert(ci.dcCandidates == discovered_check_candidates(side_to_move()));
assert(color_of_piece_on(move_from(m)) == side_to_move()); assert(color_of_piece(piece_on(move_from(m))) == side_to_move());
Square from = move_from(m); Square from = move_from(m);
Square to = move_to(m); Square to = move_to(m);
@ -920,8 +920,8 @@ void Position::do_move(Move m, StateInfo& newSt, const CheckInfo& ci, bool moveI
PieceType pt = type_of_piece(piece); PieceType pt = type_of_piece(piece);
PieceType capture = ep ? PAWN : type_of_piece(piece_on(to)); PieceType capture = ep ? PAWN : type_of_piece(piece_on(to));
assert(color_of_piece_on(from) == us); assert(color_of_piece(piece_on(from)) == us);
assert(color_of_piece_on(to) == them || square_is_empty(to)); assert(color_of_piece(piece_on(to)) == them || square_is_empty(to));
assert(!(ep || pm) || piece == make_piece(us, PAWN)); assert(!(ep || pm) || piece == make_piece(us, PAWN));
assert(!pm || relative_rank(us, to) == RANK_8); assert(!pm || relative_rank(us, to) == RANK_8);
@ -1258,7 +1258,7 @@ void Position::undo_move(Move m) {
PieceType pt = type_of_piece(piece_on(to)); PieceType pt = type_of_piece(piece_on(to));
assert(square_is_empty(from)); assert(square_is_empty(from));
assert(color_of_piece_on(to) == us); assert(color_of_piece(piece_on(to)) == us);
assert(!pm || relative_rank(us, to) == RANK_8); assert(!pm || relative_rank(us, to) == RANK_8);
assert(!ep || to == st->previous->epSquare); assert(!ep || to == st->previous->epSquare);
assert(!ep || relative_rank(us, to) == RANK_6); assert(!ep || relative_rank(us, to) == RANK_6);
@ -1524,7 +1524,7 @@ int Position::see(Move m) const {
attackers = attackers_to(to, occupied); attackers = attackers_to(to, occupied);
// If the opponent has no attackers we are finished // If the opponent has no attackers we are finished
stm = opposite_color(color_of_piece_on(from)); stm = opposite_color(color_of_piece(piece_on(from)));
stmAttackers = attackers & pieces_of_color(stm); stmAttackers = attackers & pieces_of_color(stm);
if (!stmAttackers) if (!stmAttackers)
return PieceValueMidgame[capturedType]; return PieceValueMidgame[capturedType];
@ -1645,7 +1645,7 @@ Key Position::compute_key() const {
for (Square s = SQ_A1; s <= SQ_H8; s++) for (Square s = SQ_A1; s <= SQ_H8; s++)
if (square_is_occupied(s)) if (square_is_occupied(s))
result ^= zobrist[color_of_piece_on(s)][type_of_piece(piece_on(s))][s]; result ^= zobrist[color_of_piece(piece_on(s))][type_of_piece(piece_on(s))][s];
if (ep_square() != SQ_NONE) if (ep_square() != SQ_NONE)
result ^= zobEp[ep_square()]; result ^= zobEp[ep_square()];
@ -1924,7 +1924,7 @@ bool Position::is_ok(int* failedStep) const {
int kingCount[2] = {0, 0}; int kingCount[2] = {0, 0};
for (Square s = SQ_A1; s <= SQ_H8; s++) for (Square s = SQ_A1; s <= SQ_H8; s++)
if (type_of_piece(piece_on(s)) == KING) if (type_of_piece(piece_on(s)) == KING)
kingCount[color_of_piece_on(s)]++; kingCount[color_of_piece(piece_on(s))]++;
if (kingCount[0] != 1 || kingCount[1] != 1) if (kingCount[0] != 1 || kingCount[1] != 1)
return false; return false;

View file

@ -129,7 +129,6 @@ public:
// The piece on a given square // The piece on a given square
Piece piece_on(Square s) const; Piece piece_on(Square s) const;
Color color_of_piece_on(Square s) const;
bool square_is_empty(Square s) const; bool square_is_empty(Square s) const;
bool square_is_occupied(Square s) const; bool square_is_occupied(Square s) const;
@ -322,10 +321,6 @@ inline Piece Position::piece_on(Square s) const {
return board[s]; return board[s];
} }
inline Color Position::color_of_piece_on(Square s) const {
return color_of_piece(piece_on(s));
}
inline bool Position::square_is_empty(Square s) const { inline bool Position::square_is_empty(Square s) const {
return piece_on(s) == PIECE_NONE; return piece_on(s) == PIECE_NONE;
} }