構成 | Static Public メソッド

構造体 osl::checkmate::CheckmateIfCapture

#include <checkmateIfCapture.h>

すべてのメンバ一覧

構成

struct  CallDefense

Static Public メソッド

static bool effectiveAttack (NumEffectState &state, Move move, int depth)
 move を指した後,alt(move.player())が取ると詰みかどうか.
static bool cannotCapture (NumEffectState &state, Square last_to, int depth)
 手番の側がSquare の駒を取っても詰みがないか.

  • target に利きがない場合はfalse
  • 取る指手が全て取ると詰の場合は true

static bool effectiveAttackCandidate0 (const NumEffectState &state, Move move)
 depth==0でeffectiveAttackになる可能性がなければfalse

説明

checkmateIfCapture.h13 行で定義されています。


関数

bool osl::checkmate::CheckmateIfCapture::cannotCapture ( NumEffectState state,
Square  last_to,
int  depth 
) [static]
bool osl::checkmate::CheckmateIfCapture::effectiveAttack ( NumEffectState state,
Move  move,
int  depth 
) [static]

move を指した後,alt(move.player())が取ると詰みかどうか.

  • alt(move.player()) から利きがない場合はfalse
  • 取る指手が全て取ると詰の場合は true
    引数:
    depth 0 なら ImmediateCheckmate のみ,2なら3手詰.

checkmateIfCapture.cc120 行で定義されています。

参照先 effectiveAttackCandidate0(), osl::NumEffectState::makeUnmakeMove(), osl::Move::player(), と osl::SimpleState::turn().

参照元 osl::move_probability::CheckmateIfCapture::hasSafeCapture(), と osl::rating::CheckmateIfCapture::match().

bool osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0 ( const NumEffectState state,
Move  move 
) [static]

この構造体の説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義