11 const size_t first = out.
size();
19 const size_t last = out.
size();
20 for (
size_t i=first; i<last; ++i)
22 if(out[i].hasIgnoredUnpromote())
39 namespace move_generator
41 template class Escape<move_action::Store>;
45 template void Escape<move_action::Store>::generateMoves<
WHITE,
true>(NumEffectState
const&, Piece, Piece,
move_action::Store&);
46 template void Escape<move_action::Store>::generateKingEscape<
BLACK,
false>(NumEffectState
const&,
move_action::Store&);
47 template void Escape<move_action::Store>::generateKingEscape<
WHITE,
false>(NumEffectState
const&,
move_action::Store&);
48 template void Escape<move_action::Store>::generateKingEscape<
BLACK,
true>(NumEffectState
const&,
move_action::Store&);
49 template void Escape<move_action::Store>::generateKingEscape<
WHITE,
true>(NumEffectState
const&,
move_action::Store&);
51 template void Escape<move_action::Store>::generateBlockingKing<
WHITE,
false>(
const NumEffectState&,Piece,Square,
move_action::Store&);
52 template void Escape<move_action::Store>::generateBlocking<
BLACK,
true>(
const NumEffectState&,Piece,Square,Square,
move_action::Store&);
53 template void Escape<move_action::Store>::generateBlocking<
WHITE,
true>(
const NumEffectState&,Piece,Square,Square,
move_action::Store&);
Ptype unpromote(Ptype ptype)
ptypeがpromote後の型の時に,promote前の型を返す. promoteしていない型の時はそのまま返す ...
void push_back(const T &e)
static void generate(const NumEffectState &state, MoveVector &out)
不成の受けも作成
move_action::Store store_t
static void generate(const NumEffectState &state, Piece piece, Action &a)
static void generateCheapKingEscape(const NumEffectState &state, FixedCapacityVector< Move, Capacity > &out)
const Piece kingPiece() const
static void generateCheap(const NumEffectState &state, MoveVector &out)