Small code style tidy up
authorMarco Costalba <mcostalba@gmail.com>
Fri, 6 Feb 2009 15:21:00 +0000 (16:21 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 7 Feb 2009 12:26:42 +0000 (13:26 +0100)
No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/movegen.cpp
src/position.cpp
src/position.h

index 6c34d2728ef3db629f60265ea02af5e59cea0d42..9c405defab4b75e9845e18ec809fc1310843669d 100644 (file)
@@ -233,7 +233,7 @@ int generate_checks(const Position& pos, MoveStack* mlist, Bitboard dc) {
 
 /// generate_evasions() generates all check evasions when the side to move is
 /// in check.  Unlike the other move generation functions, this one generates
 
 /// generate_evasions() generates all check evasions when the side to move is
 /// in check.  Unlike the other move generation functions, this one generates
-/// only legal moves.  It returns the number of generated moves.  This
+/// only legal moves.  It returns the number of generated moves. This
 /// function is very ugly, and needs cleaning up some time later.  FIXME
 
 int generate_evasions(const Position& pos, MoveStack* mlist) {
 /// function is very ugly, and needs cleaning up some time later.  FIXME
 
 int generate_evasions(const Position& pos, MoveStack* mlist) {
@@ -384,8 +384,8 @@ int generate_evasions(const Position& pos, MoveStack* mlist) {
 
 
 /// generate_legal_moves() computes a complete list of legal moves in the
 
 
 /// generate_legal_moves() computes a complete list of legal moves in the
-/// current position.  This function is not very fast, and should be used
-/// only in situations where performance is unimportant.  It wouldn't be
+/// current position. This function is not very fast, and should be used
+/// only in situations where performance is unimportant. It wouldn't be
 /// very hard to write an efficient legal move generator, but for the moment
 /// we don't need it.
 
 /// very hard to write an efficient legal move generator, but for the moment
 /// we don't need it.
 
@@ -741,10 +741,10 @@ namespace {
     b2 = b1 & TRank8BB;
     while (b2)
     {
     b2 = b1 & TRank8BB;
     while (b2)
     {
-      to = pop_1st_bit(&b2);
-      (*mlist++).move = make_promotion_move(to - TDELTA_N, to, ROOK);
-      (*mlist++).move = make_promotion_move(to - TDELTA_N, to, BISHOP);
-      (*mlist++).move = make_promotion_move(to - TDELTA_N, to, KNIGHT);
+        to = pop_1st_bit(&b2);
+        (*mlist++).move = make_promotion_move(to - TDELTA_N, to, ROOK);
+        (*mlist++).move = make_promotion_move(to - TDELTA_N, to, BISHOP);
+        (*mlist++).move = make_promotion_move(to - TDELTA_N, to, KNIGHT);
     }
     b2 = b1 & ~TRank8BB;
     while (b2)
     }
     b2 = b1 & ~TRank8BB;
     while (b2)
@@ -757,8 +757,8 @@ namespace {
     b2 = (Us == WHITE ? (b1 & TRank3BB) << 8 : (b1 & TRank3BB) >> 8) & emptySquares;
     while (b2)
     {
     b2 = (Us == WHITE ? (b1 & TRank3BB) << 8 : (b1 & TRank3BB) >> 8) & emptySquares;
     while (b2)
     {
-      to = pop_1st_bit(&b2);
-      (*mlist++).move = make_move(to - TDELTA_N - TDELTA_N, to);
+        to = pop_1st_bit(&b2);
+        (*mlist++).move = make_move(to - TDELTA_N - TDELTA_N, to);
     }
     return mlist;
   }
     }
     return mlist;
   }
@@ -775,8 +775,8 @@ namespace {
     // Find all friendly pawns not on the enemy king's file
     Bitboard b1 = pos.pawns(Us) & ~file_bb(ksq), b2, b3;
 
     // Find all friendly pawns not on the enemy king's file
     Bitboard b1 = pos.pawns(Us) & ~file_bb(ksq), b2, b3;
 
-    // Discovered checks, single pawn pushes
-    b2 = b3 = (Us == WHITE ? (b1 & dc) << 8 : (b1 & dc) >> 8) & ~TRank8BB & empty;
+    // Discovered checks, single pawn pushes, no promotions
+    b2 = b3 = (Us == WHITE ? (b1 & dc) << 8 : (b1 & dc) >> 8) & empty & ~TRank8BB;
     while (b3)
     {
         Square to = pop_1st_bit(&b3);
     while (b3)
     {
         Square to = pop_1st_bit(&b3);
@@ -793,8 +793,7 @@ namespace {
 
     // Direct checks. These are possible only for pawns on neighboring files
     // of the enemy king
 
     // Direct checks. These are possible only for pawns on neighboring files
     // of the enemy king
-
-    b1 &= (~dc & neighboring_files_bb(ksq)); // FIXME why ~dc ??
+    b1 &= (~dc & neighboring_files_bb(ksq));
 
     // Direct checks, single pawn pushes
     b2 = (Us == WHITE ? b1 << 8 : b1 >> 8) & empty;
 
     // Direct checks, single pawn pushes
     b2 = (Us == WHITE ? b1 << 8 : b1 >> 8) & empty;
index 5e1ebfeb486880de58081900499f67cd2b4f55b3..b9a8bf8bf26f47d365eb70110714ca9846fd1937 100644 (file)
@@ -60,11 +60,11 @@ static bool RequestPending = false;
 
 /// Constructors
 
 
 /// Constructors
 
-Position::Position(const Position &pos) {
+Position::Position(const Positionpos) {
   copy(pos);
 }
 
   copy(pos);
 }
 
-Position::Position(const std::string &fen) {
+Position::Position(const std::stringfen) {
   from_fen(fen);
 }
 
   from_fen(fen);
 }
 
@@ -73,7 +73,7 @@ Position::Position(const std::string &fen) {
 /// string. This function is not very robust - make sure that input FENs are
 /// correct (this is assumed to be the responsibility of the GUI).
 
 /// string. This function is not very robust - make sure that input FENs are
 /// correct (this is assumed to be the responsibility of the GUI).
 
-void Position::from_fen(const std::string &fen) {
+void Position::from_fen(const std::stringfen) {
 
   static const std::string pieceLetters = "KQRBNPkqrbnp";
   static const Piece pieces[] = { WK, WQ, WR, WB, WN, WP, BK, BQ, BR, BB, BN, BP };
 
   static const std::string pieceLetters = "KQRBNPkqrbnp";
   static const Piece pieces[] = { WK, WQ, WR, WB, WN, WP, BK, BQ, BR, BB, BN, BP };
@@ -1967,7 +1967,7 @@ Value Position::compute_non_pawn_material(Color c) const {
 /// side to move is checkmated. Note that this function is currently very
 /// slow, and shouldn't be used frequently inside the search.
 
 /// side to move is checkmated. Note that this function is currently very
 /// slow, and shouldn't be used frequently inside the search.
 
-bool Position::is_mate() {
+bool Position::is_mate() const {
 
   if (is_check())
   {
 
   if (is_check())
   {
index 20c56ad3819b5417c6ae482750334a1e0a475d60..33f3937738db900bb0c1ada00af6140c650e19c0 100644 (file)
@@ -122,11 +122,11 @@ class Position {
 public:
   // Constructors
   Position() {};
 public:
   // Constructors
   Position() {};
-  Position(const Position &pos);
-  Position(const std::string &fen);
+  Position(const Positionpos);
+  Position(const std::stringfen);
 
   // Text input/output
 
   // Text input/output
-  void from_fen(const std::string &fen);
+  void from_fen(const std::stringfen);
   const std::string to_fen() const;
   void print(Move m = MOVE_NONE) const;
 
   const std::string to_fen() const;
   void print(Move m = MOVE_NONE) const;
 
@@ -268,7 +268,7 @@ public:
   Value mg_pst_delta(Move m) const;
 
   // Game termination checks
   Value mg_pst_delta(Move m) const;
 
   // Game termination checks
-  bool is_mate();
+  bool is_mate() const;
   bool is_draw() const;
 
   // Check if one side threatens a mate in one
   bool is_draw() const;
 
   // Check if one side threatens a mate in one