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

Convert piece.cpp to C++

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2009-04-27 10:12:34 +01:00
parent 11491e71ee
commit fb560fa5d7

View file

@ -22,10 +22,11 @@
//// Includes //// Includes
//// ////
#include <cstring> #include <string>
#include "piece.h" #include "piece.h"
using namespace std;
//// ////
//// Functions //// Functions
@ -33,13 +34,16 @@
/// Translating piece types to/from English piece letters /// Translating piece types to/from English piece letters
static const char PieceChars[] = " pnbrqk"; static const string PieceChars(" pnbrqk PNBRQK");
char piece_type_to_char(PieceType pt, bool upcase) { char piece_type_to_char(PieceType pt, bool upcase) {
return char(upcase? toupper(PieceChars[pt]) : PieceChars[pt]);
return PieceChars[pt + upcase * 7];
} }
PieceType piece_type_from_char(char c) { PieceType piece_type_from_char(char c) {
const char* ch = strchr(PieceChars, tolower(c));
return ch? PieceType(ch - PieceChars) : NO_PIECE_TYPE; size_t idx = PieceChars.find(c);
return idx != string::npos ? PieceType(idx % 7) : NO_PIECE_TYPE;
} }