1 #ifndef OSL_MOVE_GENERATER_ADD_EFFECT_WITH_EFFECT_H
2 #define OSL_MOVE_GENERATER_ADD_EFFECT_WITH_EFFECT_H
7 #include <boost/static_assert.hpp>
11 namespace move_generator
28 template<
class Action>
32 template<Player P,
bool isAttackToKing>
33 static void generate(
const NumEffectState& state,
Square target,Action& action,
bool& hasPawnCheckmate);
34 template<Player P,
bool isAttackToKing>
35 static void generate(
const NumEffectState& state,
Square target,Action& action){
37 generate<P,isAttackToKing>(state,
target,action,dummy);
46 template<
bool isAttackToKing>
49 template<
bool isAttackToKing>
57 template<
bool isAttackToKing>
60 generate<isAttackToKing>(player,state,
target,
out,dummy);