Remove Positions::xxx_count() functions
[stockfish] / src / position.h
index 4dcbbf76ec80b24531fe414820fb7fe0781f8dc4..af1ba775de815fc418e70eb2a848d2f300a58901 100644 (file)
@@ -171,11 +171,6 @@ public:
 
   // Number of pieces of each color and type
   int piece_count(Color c, PieceType pt) const;
-  int pawn_count(Color c) const;
-  int knight_count(Color c) const;
-  int bishop_count(Color c) const;
-  int rook_count(Color c) const;
-  int queen_count(Color c) const;
 
   // The en passant square:
   Square ep_square() const;
@@ -213,8 +208,7 @@ public:
   Bitboard attacks_to(Square s) const;
   Bitboard attacks_to(Square s, Color c) const;
   bool is_check() const;
-  bool white_pawn_attacks_square(Square f, Square t) const;
-  bool black_pawn_attacks_square(Square f, Square t) const;
+  bool pawn_attacks_square(Color c, Square f, Square t) const;
 
   template<PieceType>
   Bitboard piece_attacks_square(Square f, Square t) const; // Dispatch at compile-time
@@ -492,26 +486,6 @@ inline int Position::piece_count(Color c, PieceType pt) const {
   return pieceCount[c][pt];
 }
 
-inline int Position::pawn_count(Color c) const {
-  return piece_count(c, PAWN);
-}
-
-inline int Position::knight_count(Color c) const {
-  return piece_count(c, KNIGHT);
-}
-
-inline int Position::bishop_count(Color c) const {
-  return piece_count(c, BISHOP);
-}
-
-inline int Position::rook_count(Color c) const {
-  return piece_count(c, ROOK);
-}
-
-inline int Position::queen_count(Color c) const {
-  return piece_count(c, QUEEN);
-}
-
 inline Square Position::piece_list(Color c, PieceType pt, int index) const {
   return pieceList[c][pt][index];
 }
@@ -581,12 +555,8 @@ inline bool Position::is_check() const {
   return checkers() != EmptyBoardBB;
 }
 
-inline bool Position::white_pawn_attacks_square(Square f, Square t) const {
-  return bit_is_set(pawn_attacks(WHITE, f), t);
-}
-
-inline bool Position::black_pawn_attacks_square(Square f, Square t) const {
-  return bit_is_set(pawn_attacks(BLACK, f), t);
+inline bool Position::pawn_attacks_square(Color c, Square f, Square t) const {
+  return bit_is_set(pawn_attacks(c, f), t);
 }
 
 template<PieceType Piece>
@@ -712,8 +682,8 @@ inline int Position::rule_50_counter() const {
 
 inline bool Position::opposite_colored_bishops() const {
 
-  return   bishop_count(WHITE) == 1
-        && bishop_count(BLACK) == 1        
+  return   piece_count(WHITE, BISHOP) == 1
+        && piece_count(BLACK, BISHOP) == 1        
         && square_color(piece_list(WHITE, BISHOP, 0)) != square_color(piece_list(BLACK, BISHOP, 0));
 }