osl::effect_action::AlwaysMove< Action > 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
Public Member Functions | Private Member Functions | Private Attributes | List of all members
osl::effect_action::AlwaysMove< Action > Class Template Reference

全ての指手を生成 More...

`#include <alwaysMove.h>`

Collaboration diagram for osl::effect_action::AlwaysMove< Action >:
[legend]

## Public Member Functions
| AlwaysMove (const NumEffectState &s, Action &a)
template<Player P, Ptype Type>
void | doActionPtype (Piece p1, Square to)
| Ptypeをtemplate引数にできる場合 More...
template<Player P>
void | doAction (Piece p1, Square to)
| Ptypeをtemplate引数にできない場合 More...
bool | done () const

## Private Member Functions
| BOOST_CLASS_REQUIRE (Action, osl::move_action, Concept)

## Private Attributes
const NumEffectState & | state
Action & | ac

## Detailed Description

### template<class Action>
class osl::effect_action::AlwaysMove< Action >

全ての指手を生成

Definition at line 18 of file alwaysMove.h.

## Constructor & Destructor Documentation

template<class Action >

osl::effect_action::AlwaysMove< Action >::AlwaysMove | ( | const NumEffectState & | s,
|  | Action & | a
| ) |  |
| inline

Definition at line 25 of file alwaysMove.h.

## Member Function Documentation

template<class Action >

osl::effect_action::AlwaysMove< Action >::BOOST_CLASS_REQUIRE | ( | Action | ,
|  | osl::move_action | ,
|  | Concept |
| ) |  |
| private

template<class Action >
template<Player P>

void osl::effect_action::AlwaysMove< Action >::doAction | ( | Piece | p1,
|  | Square | to
| ) |  |
| inline

Ptypeをtemplate引数にできない場合

Definition at line 48 of file alwaysMove.h.

References osl::effect_action::AlwaysMove< Action >::ac, osl::PtypeTable::canDropTo(), osl::canPromote(), osl::Square::canPromote(), osl::promote(), osl::Piece::ptype(), osl::Ptype_Table, osl::Piece::square(), and osl::effect_action::AlwaysMove< Action >::state.

template<class Action >
template<Player P, Ptype Type>

void osl::effect_action::AlwaysMove< Action >::doActionPtype | ( | Piece | p1,
|  | Square | to
| ) |  |
| inline

Ptypeをtemplate引数にできる場合

Definition at line 30 of file alwaysMove.h.

References osl::effect_action::AlwaysMove< Action >::ac, osl::PtypePlayerTraits< T, P >::canDropTo(), osl::canPromote(), osl::Square::canPromote(), osl::Piece::isPromotedNotKingGold(), osl::promote(), osl::Piece::ptype(), osl::Piece::square(), osl::effect_action::AlwaysMove< Action >::state, and osl::unpromote().

template<class Action >

bool osl::effect_action::AlwaysMove< Action >::done | ( | ) |  | const
| inline

Definition at line 77 of file alwaysMove.h.

## Member Data Documentation

template<class Action >

Action& osl::effect_action::AlwaysMove< Action >::ac
| private

Definition at line 23 of file alwaysMove.h.

Referenced by osl::effect_action::AlwaysMove< Action >::doAction(), and osl::effect_action::AlwaysMove< Action >::doActionPtype().

template<class Action >

const NumEffectState& osl::effect_action::AlwaysMove< Action >::state
| private

Definition at line 22 of file alwaysMove.h.

Referenced by osl::effect_action::AlwaysMove< Action >::doAction(), and osl::effect_action::AlwaysMove< Action >::doActionPtype().

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

- alwaysMove.h