関数 | |
template<Player P> | |
bool | blockingVerticalAttack (NumEffectState const &state, Position pos) |
template<Player P> | |
bool | blockingDiagonalAttack (NumEffectState const &state, Position pos, Position target, King8Info canMoveMask) |
template<Player P, bool canDrop, bool setBestMove> | |
bool | hasKnightCheckmate (NumEffectState const &state, Position target, Position pos, King8Info canMoveMask, Move &bestMove, mask_t mask1) |
template<Player P, bool setBestMove> | |
bool | hasCheckmateMoveKnight (NumEffectState const &state, Position target, King8Info canMoveMask, Move &bestMove) |
template<Player P, bool setBestMove> | |
bool | slowCheckDrop (NumEffectState const &state, Position target, Ptype ptype, King8Info canMoveMask, Move &bestMove) |
bool osl::checkmate::detail::blockingDiagonalAttack | ( | NumEffectState const & | state, | |
Position | pos, | |||
Position | target, | |||
King8Info | canMoveMask | |||
) | [inline] |
bool osl::checkmate::detail::blockingVerticalAttack | ( | NumEffectState const & | state, | |
Position | pos | |||
) | [inline] |
immediateCheckmate.tcc の 22 行で定義されています。
参照先 osl::Piece::canMoveOn(), osl::Piece::isEmpty(), osl::Position::isOnBoard(), と osl::Position::isU().
bool osl::checkmate::detail::hasCheckmateMoveKnight | ( | NumEffectState const & | state, | |
Position | target, | |||
King8Info | canMoveMask, | |||
Move & | bestMove | |||
) | [inline] |
immediateCheckmate.tcc の 121 行で定義されています。
bool osl::checkmate::detail::hasKnightCheckmate | ( | NumEffectState const & | state, | |
Position | target, | |||
Position | pos, | |||
King8Info | canMoveMask, | |||
Move & | bestMove, | |||
mask_t | mask1 | |||
) | [inline] |
bool osl::checkmate::detail::slowCheckDrop | ( | NumEffectState const & | state, | |
Position | target, | |||
Ptype | ptype, | |||
King8Info | canMoveMask, | |||
Move & | bestMove | |||
) | [inline] |
immediateCheckmate.tcc の 147 行で定義されています。
参照先 osl::checkmate::ImmediateCheckmateTable::blockingMask(), osl::Board_Table, osl::BoardTable::getOffset(), osl::checkmate::Immediate_Checkmate_Table, osl::BoardTable::isBetween(), osl::Position::position, osl::checkmate::ImmediateCheckmateTable::ptypeDropMask(), osl::misc::BitOp::takeOneBit(), と osl::checkmate::King8Info::value.