3 #ifndef OSL_MOVE_CLASSIFIER_DIRECTCHECK_H 4 #define OSL_MOVE_CLASSIFIER_DIRECTCHECK_H 10 namespace move_classifier
20 assert(!state.template hasEffectAt<P>(state.template kingSquare<
alt(P)>()));
28 state.template kingSquare<
alt(P)>());
bool hasEffectIf(PtypeO ptypeo, Square attacker, Square target) const
attackerにptypeoの駒がいると仮定した場合にtargetに利きがあるかどうか を stateをupdateしないで確かめる...
constexpr Player alt(Player player)
PtypeO newPtypeO(Player player, Ptype ptype)
static bool isMember(const State &state, Ptype ptype, Square, Square to)
static bool isMember(const NumEffectState &state, Ptype ptype, Square to)