Skip to content

Commit

Permalink
Move to_char() and to_string() to notation
Browse files Browse the repository at this point in the history
Where they better belong.

Also, this removes '#include <string>' from types.h, which reduces the amount of code to compile (every
translation unit includes types.h).

No functional change.
  • Loading branch information
lucasart committed Aug 9, 2014
1 parent a67c226 commit 880e3cd
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 15 deletions.
1 change: 1 addition & 0 deletions src/bitboard.h
Expand Up @@ -21,6 +21,7 @@
#ifndef BITBOARD_H_INCLUDED
#define BITBOARD_H_INCLUDED

#include <string>
#include "types.h"

namespace Bitboards {
Expand Down
13 changes: 13 additions & 0 deletions src/notation.h
Expand Up @@ -32,4 +32,17 @@ const std::string move_to_uci(Move m, bool chess960);
const std::string move_to_san(Position& pos, Move m);
std::string pretty_pv(Position& pos, int depth, Value score, int64_t msecs, Move pv[]);

inline char to_char(File f, bool tolower = true) {
return char(f - FILE_A + (tolower ? 'a' : 'A'));
}

inline char to_char(Rank r) {
return char(r - RANK_1 + '1');
}

inline const std::string to_string(Square s) {
char ch[] = { to_char(file_of(s)), to_char(rank_of(s)), 0 };
return ch;
}

#endif // #ifndef NOTATION_H_INCLUDED
1 change: 1 addition & 0 deletions src/position.cpp
Expand Up @@ -30,6 +30,7 @@
#include "rkiss.h"
#include "thread.h"
#include "tt.h"
#include "notation.h"

using std::string;

Expand Down
15 changes: 0 additions & 15 deletions src/types.h
Expand Up @@ -405,14 +405,6 @@ inline bool opposite_colors(Square s1, Square s2) {
return ((s >> 3) ^ s) & 1;
}

inline char to_char(File f, bool tolower = true) {
return char(f - FILE_A + (tolower ? 'a' : 'A'));
}

inline char to_char(Rank r) {
return char(r - RANK_1 + '1');
}

inline Square pawn_push(Color c) {
return c == WHITE ? DELTA_N : DELTA_S;
}
Expand Down Expand Up @@ -446,11 +438,4 @@ inline bool is_ok(Move m) {
return from_sq(m) != to_sq(m); // Catches also MOVE_NULL and MOVE_NONE
}

#include <string>

inline const std::string to_string(Square s) {
char ch[] = { to_char(file_of(s)), to_char(rank_of(s)), 0 };
return ch;
}

#endif // #ifndef TYPES_H_INCLUDED

0 comments on commit 880e3cd

Please sign in to comment.