]> git.sesse.net Git - stockfish/blobdiff - src/piece.h
Retire piece.cpp
[stockfish] / src / piece.h
index f88eead856bf13a630cb0d393d9ec0149976990f..59fb83924d1f79dfc7fbffb8a95401ef77bae915 100644 (file)
@@ -25,6 +25,8 @@
 //// Includes
 ////
 
+#include <string>
+
 #include "color.h"
 #include "square.h"
 #include "value.h"
@@ -69,10 +71,6 @@ const Value RookValueEndgame   = Value(0x4FE);
 const Value QueenValueMidgame  = Value(0x9D9);
 const Value QueenValueEndgame  = Value(0x9FE);
 
-extern const Value PieceValueMidgame[17];
-extern const Value PieceValueEndgame[17];
-extern const int SlidingArray[18];
-
 
 ////
 //// Inline functions
@@ -90,10 +88,6 @@ inline Piece piece_of_color_and_type(Color c, PieceType pt) {
   return Piece((int(c) << 3) | int(pt));
 }
 
-inline int piece_is_slider(Piece p) {
-  return SlidingArray[p];
-}
-
 inline SquareDelta pawn_push(Color c) {
     return (c == WHITE ? DELTA_N : DELTA_S);
 }
@@ -106,13 +100,12 @@ inline bool piece_is_ok(Piece pc) {
   return piece_type_is_ok(type_of_piece(pc)) && color_is_ok(color_of_piece(pc));
 }
 
+inline char piece_type_to_char(PieceType pt) {
+  return std::string(" PNBRQK")[pt];
+}
 
-////
-//// Prototypes
-////
-
-extern char piece_type_to_char(PieceType pt, bool upcase = false);
-extern PieceType piece_type_from_char(char c);
-
+inline PieceType piece_type_from_char(char c) {
+  return PieceType(std::string(" PNBRQK").find(c));
+}
 
 #endif // !defined(PIECE_H_INCLUDED)