関数

ネームスペース osl::move_generator::escape

関数

template<Player P, class Action , Ptype Type>
bool generateDrop (const NumEffectState &state, Square to, Action &action)
 Tの駒をtoに打つ手を生成する. 生成できたらtrueを返す..
template<Player P, class Action , bool CheapOnly>
void generateDropAll (const NumEffectState &state, Square to, Action &action)
template<Player P, class Action , bool CheapOnly>
void blockByMoveOne (const NumEffectState &state, Square pos, Action &action)
 安い駒でposへ移動する手を生成する. 自殺手も生成している. TODO: あんまりなif文 PAWN,LANCE mask, それ以外maskでOK

関数

template<Player P, class Action , bool CheapOnly>
void osl::move_generator::escape::blockByMoveOne ( const NumEffectState &  state,
Square  pos,
Action &  action 
)

安い駒でposへ移動する手を生成する. 自殺手も生成している. TODO: あんまりなif文 PAWN,LANCE mask, それ以外maskでOK

escape_.tcc52 行で定義されています。

参照先 osl::BISHOP, osl::NumEffectState::effectSetAt(), osl::Piece::EMPTY(), osl::GOLD, osl::KNIGHT, osl::LANCE, osl::PAWN, osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), osl::ROOK, osl::PieceMask::selectBit(), と osl::SILVER.

template<Player P, class Action , Ptype Type>
bool osl::move_generator::escape::generateDrop ( const NumEffectState &  state,
Square  to,
Action &  action 
)

Tの駒をtoに打つ手を生成する. 生成できたらtrueを返す..

escape_.tcc19 行で定義されています。

参照先 osl::SimpleState::isPawnMaskSet(), osl::PAWN, と osl::Square::x().

template<Player P, class Action , bool CheapOnly>
void osl::move_generator::escape::generateDropAll ( const NumEffectState &  state,
Square  to,
Action &  action 
)

escape_.tcc34 行で定義されています。

 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義