From: Marco Costalba Date: Mon, 22 Nov 2010 10:50:58 +0000 (+0100) Subject: Retire piece.cpp X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=00d9fe8af09891e82d66f88c48b513d6a7326f2a Retire piece.cpp No functional change. Signed-off-by: Marco Costalba --- diff --git a/src/Makefile b/src/Makefile index aed8271b..25bb0f0b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -34,7 +34,7 @@ PGOBENCH = ./$(EXE) bench 32 1 10 default depth ### Object files OBJS = application.o bitboard.o pawns.o material.o endgame.o evaluate.o main.o \ - misc.o move.o movegen.o history.o movepick.o search.o piece.o position.o \ + misc.o move.o movegen.o history.o movepick.o search.o position.o \ direction.o tt.o uci.o ucioption.o book.o bitbase.o san.o benchmark.o timeman.o diff --git a/src/move.cpp b/src/move.cpp index 31622c2d..5ef64fe4 100644 --- a/src/move.cpp +++ b/src/move.cpp @@ -23,6 +23,7 @@ //// #include +#include #include "move.h" #include "piece.h" @@ -128,7 +129,7 @@ const std::string move_to_string(Move move, bool chess960) { str = square_to_string(from) + square_to_string(to); if (move_is_promotion(move)) - str += piece_type_to_char(move_promotion_piece(move), false); + str += char(tolower(piece_type_to_char(move_promotion_piece(move)))); } return str; } diff --git a/src/piece.cpp b/src/piece.cpp deleted file mode 100644 index a9adf573..00000000 --- a/src/piece.cpp +++ /dev/null @@ -1,39 +0,0 @@ -/* - Stockfish, a UCI chess playing engine derived from Glaurung 2.1 - Copyright (C) 2004-2008 Tord Romstad (Glaurung author) - Copyright (C) 2008-2010 Marco Costalba, Joona Kiiski, Tord Romstad - - Stockfish is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Stockfish is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -#include - -#include "piece.h" - -static const std::string PieceChars(" pnbrqk PNBRQK"); - - -/// Translating piece types to/from English piece letters - -char piece_type_to_char(PieceType pt, bool upcase) { - - return PieceChars[pt + (upcase ? 7 : 0)]; -} - -PieceType piece_type_from_char(char c) { - - size_t idx = PieceChars.find(c); - - return idx != std::string::npos ? PieceType(idx % 7) : PIECE_TYPE_NONE; -} diff --git a/src/piece.h b/src/piece.h index df81e5ff..59fb8392 100644 --- a/src/piece.h +++ b/src/piece.h @@ -25,6 +25,8 @@ //// Includes //// +#include + #include "color.h" #include "square.h" #include "value.h" @@ -98,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) diff --git a/src/san.cpp b/src/san.cpp index 6a8fd137..ef22626f 100644 --- a/src/san.cpp +++ b/src/san.cpp @@ -85,7 +85,7 @@ const string move_to_san(Position& pos, Move m) { { if (pt != PAWN) { - san += piece_type_to_char(pt, true); + san += piece_type_to_char(pt); switch (move_ambiguity(pos, m)) { case AMBIGUITY_NONE: @@ -113,7 +113,7 @@ const string move_to_san(Position& pos, Move m) { if (move_is_promotion(m)) { san += "="; - san += piece_type_to_char(move_promotion_piece(m), true); + san += piece_type_to_char(move_promotion_piece(m)); } }