osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir > Class Template Reference

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Static Public Member Functions | Static Private Member Functions | List of all members
osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir > Class Template Reference

## Static Public Member Functions
template<class Action >
static void | generate (NumEffectState const &state, Piece p, Action &action)

## Static Private Member Functions
template<class Action >
static void | generateIfValid (const NumEffectState &state, Piece piece, Action &action, Int2Type< true >, Int2Type< true >)
template<class Action >
static void | generateIfValid (const NumEffectState &state, Piece p, Action &action, Int2Type< false >, Int2Type< true >)
template<class Action >
static void | generateIfValid (const NumEffectState &, Piece, Action &, Int2Type< true >, Int2Type< false >)
template<class Action >
static void | generateIfValid (const NumEffectState &, Piece, Action &, Int2Type< false >, Int2Type< false >)

## Detailed Description

### template<Player P, Ptype T, bool noCapture, Direction Dir>
class osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >

Definition at line 15 of file promote_.tcc.

## Member Function Documentation

template<Player P, Ptype T, bool noCapture, Direction Dir>
template<class Action >

static void osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generate | ( | NumEffectState const & | state,
|  | Piece | p,
|  | Action & | action
| ) |  |
| inlinestatic

Definition at line 59 of file promote_.tcc.

References osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid().

Referenced by osl::move_generator::promote::AllPromote< P, T, noCapture >::generate().

template<Player P, Ptype T, bool noCapture, Direction Dir>
template<class Action >

static void osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid | ( | const NumEffectState & | state,
|  | Piece | piece,
|  | Action & | action,
|  | Int2Type< true > | ,
|  | Int2Type< true > |
| ) |  |
| inlinestaticprivate

Definition at line 18 of file promote_.tcc.

References osl::Piece::canMoveOn(), osl::Square::isPieceStand(), osl::longToShort(), osl::Piece::number(), osl::Piece::square(), and osl::Offset::zero().

Referenced by osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generate().

template<Player P, Ptype T, bool noCapture, Direction Dir>
template<class Action >

static void osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid | ( | const NumEffectState & | state,
|  | Piece | p,
|  | Action & | action,
|  | Int2Type< false > | ,
|  | Int2Type< true > |
| ) |  |
| inlinestaticprivate

Definition at line 38 of file promote_.tcc.

References osl::Piece::canMoveOn(), osl::Piece::isEmpty(), and osl::Piece::square().

template<Player P, Ptype T, bool noCapture, Direction Dir>
template<class Action >

static void osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid | ( | const NumEffectState & | ,
|  | Piece | ,
|  | Action & | ,
|  | Int2Type< true > | ,
|  | Int2Type< false > |
| ) |  |
| inlinestaticprivate

Definition at line 52 of file promote_.tcc.

template<Player P, Ptype T, bool noCapture, Direction Dir>
template<class Action >

static void osl::move_generator::promote::AllPromoteDir< P, T, noCapture, Dir >::generateIfValid | ( | const NumEffectState & | ,
|  | Piece | ,
|  | Action & | ,
|  | Int2Type< false > | ,
|  | Int2Type< false > |
| ) |  |
| inlinestaticprivate

Definition at line 55 of file promote_.tcc.

The documentation for this class was generated from the following file:

- promote_.tcc