+ assert (m != MOVE_NONE && m != MOVE_NULL);
+ return !square_is_empty(move_to(m)) || move_is_ep(m);
+}
+
+inline bool Position::move_is_capture_or_promotion(Move m) const {
+
+ assert (m != MOVE_NONE && m != MOVE_NULL);
+ return move_is_capture(m) || move_is_promotion(m);
+}
+
+inline PieceType Position::captured_piece_type() const {
+ return st->capturedType;
+}
+
+inline int Position::thread() const {
+ return threadID;
+}
+
+inline void Position::do_allow_oo(Color c) {
+ st->castleRights |= (1 + int(c));
+}