osl::move_classifier::BlockLongEffect< P, T > Struct 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 | List of all members
osl::move_classifier::BlockLongEffect< P, T > Struct Template Reference

長い利きをブロックする手の判定. More...

`#include <blockLongEffect.h>`

## Static Public Member Functions
static bool | isMember (NumEffectState const &state, Ptype, Square, Square to)
| 相手の長い駒をブロックする手. More...

## Detailed Description

### template<Player P, Ptype T>
struct osl::move_classifier::BlockLongEffect< P, T >

長い利きをブロックする手の判定.

Parameters

  P | - 動かす側のプレイヤー
  T | - ブロックする駒の種類(ROOK,BISHOP,LANCE)

Definition at line 18 of file blockLongEffect.h.

## Member Function Documentation

template<Player P, Ptype T>

static bool osl::move_classifier::BlockLongEffect< P, T >::isMember | ( | NumEffectState const & | state,
|  | Ptype | ,
|  | Square | ,
|  | Square | to
| ) |  |
| inlinestatic

相手の長い駒をブロックする手.

もともとブロックしている場合も近づくならtrueにする 盤端(相手の駒の前)でのブロックはブロックに入れない 駒を取る手はブロックに入れない 複数の駒をブロックする時は条件を満たすものを探すまで全部調べる

Parameters

  state | - 動かす前の盤面
  ptype | - 動かす駒の移動後のptype
  from | - 動かす駒の移動前の位置
  to | - 動かす駒の移動後の位置

Definition at line 35 of file blockLongEffect.h.

References osl::Board_Table, osl::BOOST_STATIC_ASSERT(), osl::BoardTable::getShortOffset(), osl::Piece::isEdge(), osl::Piece::isPiece(), osl::Piece::owner(), osl::Piece::ptype(), osl::Piece::square(), and osl::unpromote().

Referenced by osl::move_classifier::BlockLongAny< P >::isMember().

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

- blockLongEffect.h