全ての指手を生成 [詳細]
#include <alwaysMove.h>
Public メソッド | |
AlwaysMove (const NumEffectState &s, Action &a) | |
template<Player P, Ptype Type> | |
void | doActionPtype (Piece p1, Position to) |
Ptypeをtemplate引数にできる場合. | |
template<Player P> | |
void | doAction (Piece p1, Position to) |
Ptypeをtemplate引数にできない場合. | |
bool | done () const |
Private メソッド | |
BOOST_CLASS_REQUIRE (Action, osl::move_action, Concept) | |
Private 変数 | |
const NumEffectState & | state |
Action & | ac |
全ての指手を生成
alwaysMove.h の 18 行で定義されています。
osl::effect_action::AlwaysMove< Action >::AlwaysMove | ( | const NumEffectState & | s, | |
Action & | a | |||
) | [inline] |
alwaysMove.h の 25 行で定義されています。
osl::effect_action::AlwaysMove< Action >::BOOST_CLASS_REQUIRE | ( | Action | , | |
osl::move_action | , | |||
Concept | ||||
) | [private] |
void osl::effect_action::AlwaysMove< Action >::doAction | ( | Piece | p1, | |
Position | to | |||
) | [inline] |
Ptypeをtemplate引数にできない場合.
alwaysMove.h の 48 行で定義されています。
参照先 osl::effect_action::AlwaysMove< Action >::ac, osl::PtypeTable::canDropTo(), osl::Position::canPromote(), osl::canPromote(), osl::Piece::position(), osl::promote(), osl::Piece::ptype(), osl::Ptype_Table, と osl::effect_action::AlwaysMove< Action >::state.
void osl::effect_action::AlwaysMove< Action >::doActionPtype | ( | Piece | p1, | |
Position | to | |||
) | [inline] |
Ptypeをtemplate引数にできる場合.
alwaysMove.h の 30 行で定義されています。
参照先 osl::effect_action::AlwaysMove< Action >::ac, osl::Position::canPromote(), osl::canPromote(), osl::Piece::isPromotedNotKingGold(), osl::Piece::position(), osl::promote(), osl::Piece::ptype(), osl::effect_action::AlwaysMove< Action >::state, と osl::unpromote().
bool osl::effect_action::AlwaysMove< Action >::done | ( | ) | const [inline] |
alwaysMove.h の 77 行で定義されています。
Action& osl::effect_action::AlwaysMove< Action >::ac [private] |
const NumEffectState& osl::effect_action::AlwaysMove< Action >::state [private] |