Public メソッド | Static Public メソッド | Static Public 変数 | Private 型 | Private メソッド | Private 変数

クラス osl::Move

圧縮していない moveの表現 . [詳細]

#include <basic_type.h>

osl::Moveに対する継承グラフ
Inheritance graph
[凡例]

すべてのメンバ一覧

Public メソッド

int intValue () const
unsigned int hash () const
 駒を取らない手を [0, 16305] にmap
 Move ()
bool isNormal () const
 INVALID でも PASS でもない.
bool isPass () const
 Move (Square from, Square to, Ptype ptype, Ptype capture_ptype, bool is_promote, Player player)
 移動
 Move (Square to, Ptype ptype, Player player)
 drop
Move16 toMove16 () const
const Square from () const
const Square to () const
unsigned int fromTo () const
 fromとtoをまとめて同一性の判定など
int promoteMask () const
 pieceに使うためのmaskなので
bool isPromotion () const
bool isCapture () const
bool isCaptureOrPromotion () const
bool isDrop () const
bool isPawnDrop () const
Ptype ptype () const
PtypeO ptypeO () const
 移動後のPtype, i.e., 成る手だった場合成った後
PtypeO oldPtypeO () const
 移動前のPtypeO, i.e., 成る手だった場合成る前
Ptype oldPtype () const
 移動前のPtype, i.e., 成る手だった場合成る前
Ptype capturePtype () const
PtypeO capturePtypeO () const
PtypeO capturePtypeOSafe () const
Player player () const
bool isValid () const
bool isInvalid () const
 state に apply 可能でない場合にtrue
bool isValidOrPass () const
Move newFrom (Square new_from) const
Move newAddFrom (Square new_from) const
const Move newAddCapture (Piece capture) const
 no capture moveからcapture moveを作る
const Move newCapture (Piece capture) const
const Move newCapture (Ptype capture) const
const Move unpromote () const
 promote moveからunpromote moveを作る
const Move promote () const
 unpromote moveからpromote moveを作る
Move newAddTo (Offset o) const
 moveのtoをoffsetだけ変える. 元のtoが0以外でも使える
Move newAddTo (Square sq) const
 つくってあったmoveの雛形のsquareをsetする. mのtoは0
Move newAddPtype (Ptype newPtype) const
 作ってあったPTYPE_EMPTYのひな形のPTYPEをsetする
template<Player P>
bool ignoreUnpromote () const
 合法手ではあるが,打歩詰め絡み以外では有利にはならない手.
bool ignoreUnpromote () const
template<Player P>
bool hasIgnoredUnpromote () const
 MoveをunpromoteするとcutUnpromoteなMoveになる.
bool hasIgnoredUnpromote () const
const Move rotate180 () const

Static Public メソッド

static const Move makeDirect (int value)
static const Move PASS (Player P)
static const Move INVALID ()
static const Move DeclareWin ()
static const Move fromMove16 (Move16, const SimpleState &)
template<Player P>
static bool ignoreUnpromote (Ptype ptype, Square from, Square to)

Static Public 変数

static const int BitOffsetPromote = Piece::BitOffsetMovePromote
static const unsigned int MaxUniqMoves = 600
 一局面辺りの合法手の最大値 重複して手を生成することがある場合は,600では不足かもしれない

Private 型

enum  { INVALID_VALUE = (1<<8), DECLARE_WIN = (2<<8), BLACK_PASS = 0, WHITE_PASS = (-1)<<28 }

Private メソッド

 Move (int value)
void init (Square from, Square to, Ptype ptype, Ptype capture_ptype, bool is_promote, Player player)

Private 変数

int move

説明

圧縮していない moveの表現 .

Pieceとpromotepをそろえる -> 変える. 下位から 2009/12/10から

basic_type.h1051 行で定義されています。


列挙型

anonymous enum [private]
列挙型の値:
INVALID_VALUE 
DECLARE_WIN 
BLACK_PASS 
WHITE_PASS 

basic_type.h1060 行で定義されています。


コンストラクタとデストラクタ

osl::Move::Move ( int  value  )  [inline, explicit, private]

basic_type.h1057 行で定義されています。

osl::Move::Move (  )  [inline]

basic_type.h1084 行で定義されています。

参照元 DeclareWin(), fromMove16(), INVALID(), makeDirect(), PASS(), と rotate180().

osl::Move::Move ( Square  from,
Square  to,
Ptype  ptype,
Ptype  capture_ptype,
bool  is_promote,
Player  player 
) [inline]

移動

basic_type.h1100 行で定義されています。

参照先 init(), osl::Square::isOnBoard(), isValid(), osl::Square::isValid(), と move_assert.

osl::Move::Move ( Square  to,
Ptype  ptype,
Player  player 
) [inline]

drop

basic_type.h1114 行で定義されています。

参照先 init(), osl::Square::isOnBoard(), isValid(), move_assert, osl::PTYPE_EMPTY, と osl::Square::STAND().


関数

Ptype osl::Move::capturePtype (  )  const [inline]

basic_type.h1180 行で定義されています。

参照先 isNormal(), と move.

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::checkmate::ProofPieces::attack(), osl::checkmate::OracleAdjust::attack(), osl::checkmate::LibertyEstimator::attackH(), osl::rating::Threatmate::captureForKnightCheck(), capturePtypeO(), osl::checkmate::DisproofPieces::defense(), osl::checkmate::LibertyEstimator::defenseH(), osl::eval::PtypeEvalTable::diffWithMove(), osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0(), osl::eval::ml::PieceEval::evalWithUpdate(), osl::eval::ml::PieceStand::evalWithUpdate(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PromotedMinorPieces::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeX::evalWithUpdate(), osl::eval::ml::PtypeY::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PieceStandY::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PtypeCount::evalWithUpdateBang(), osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang(), osl::eval::ml::NonPawnAttacked::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::NonPawnPieceStandTurn::evalWithUpdateBang(), osl::progress::Effect5x3WithBonus::expect(), osl::progress::Effect5x3::expect(), osl::csa::fancyShow(), osl::rating::SendOffGroup::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::DropCapturedGroup::findMatchWithoutProgress(), hash(), osl::rating::Threatmate::isCandidate(), isCapture(), isValid(), osl::rating::PawnAttack::match(), osl::rating::Chase::match(), osl::rating::SendOff::match(), osl::move_probability::ThreatmateByCapture::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::ToEffect::match(), osl::move_probability::ContinueCapture::match(), osl::move_probability::CapturePtype::match(), osl::rating::ContinueCapture::match(), osl::rating::Karanari::matchGeneral(), osl::hash::HashKey::newMakeMove(), osl::hash::HashKey::newUnmakeMove(), osl::PieceStand::nextStand(), osl::book::OMove::OMove(), osl::operator<<(), osl::PieceStand::previousStand(), rotate180(), osl::psn::showXP(), osl::SimpleState::testValidityOtherThanEffect(), osl::progress::PtypeProgress::update(), osl::eval::ml::NonPawnAttackedPtype::updateChanged(), osl::progress::ml::NewProgress::updateMain(), osl::progress::Effect5x3::updateStand(), osl::progress::ml::NewProgress::updateSub(), と osl::eval::ml::OpenMidEndingEval::updateSub().

PtypeO osl::Move::capturePtypeO (  )  const [inline]
PtypeO osl::Move::capturePtypeOSafe (  )  const [inline]

basic_type.h1189 行で定義されています。

参照先 capturePtypeO(), isCapture(), と osl::PTYPEO_EMPTY.

参照元 osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate().

static const Move osl::Move::DeclareWin (  )  [inline, static]

basic_type.h1096 行で定義されています。

参照先 DECLARE_WIN, と Move().

参照元 osl::operator<<(), osl::usi::show(), osl::csa::show(), osl::usi::strToMove(), と osl::csa::strToMove().

const Square osl::Move::from (  )  const [inline]

basic_type.h1125 行で定義されています。

参照先 isInvalid(), isValidOrPass(), makeDirect(), move, と move_assert.

参照元 osl::move_probability::MoveInfo::adhocAdjustKeepCheckmateDefender(), osl::move_probability::MoveInfo::adhocAdjustSlider(), osl::checkmate::OracleAdjust::attack(), osl::checkmate::FixedDepthSearcher::attack(), osl::checkmate::LibertyEstimator::attackH(), osl::checkmate::attackProofCost(), osl::ShouldPromoteCut::canIgnoreMove(), osl::eval::See::computeValue(), osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::eval::ml::PiecePair::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeX::evalWithUpdate(), osl::eval::ml::PtypeY::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::King25EffectEachBoth::evalWithUpdate(), osl::eval::ml::King25EmptySquareNoEffect::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::NonPawnAttacked::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::KingXBlockedYBase::evalWithUpdateBang(), osl::eval::ml::King8EffectBase::evalWithUpdateCommon(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::rating::PatternLong2::find(), osl::rating::PatternLong::find(), osl::move_probability::BlockLongFrom::findAll(), osl::eval::See::findEffectPiecesAfterMove(), osl::rating::PatternGroup::findMatch(), osl::rating::AttackKing8Group::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::PtypeAttackedGroup::findMatch(), osl::rating::FromEffectGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), fromMove16(), osl::checkmate::Dfpn::grandParentSimulationSuitable(), osl::checkmate::FixedDepthSolverExt::hasCheckmateWithGuide(), ignoreUnpromote(), osl::rating::PinAttack::index(), osl::rating::Open::index(), osl::SimpleState::isAlmostValidDrop(), osl::SimpleState::isAlmostValidMove(), osl::NumEffectState::isAlmostValidMove(), osl::rating::Threatmate::isCandidate(), osl::move_probability::BreakThreatmate::isDefendingThreatmate(), isDrop(), osl::move_classifier::PlayerMoveAdaptor< Classifier >::isMember(), osl::move_classifier::MoveAdaptor< Classifier >::isMember(), osl::move_probability::BreakThreatmate::isOpeningKingRoad(), isValid(), osl::SimpleState::isValidMoveByRule(), osl::NumEffectState::makeMove(), osl::rating::RelativeKingX::makeOldX(), osl::rating::RelativeKingY::makeOldY(), osl::NumEffectState::makeUnmakeMove(), osl::rating::PinAttack::match(), osl::rating::Pattern::match(), osl::rating::AttackKing8::match(), osl::rating::RookDefense::match(), osl::rating::Chase::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::MoveFromOpposingSliders::match(), osl::move_probability::PatternBase< TestPromotable >::match(), osl::move_probability::ToEffectLong::match(), osl::move_probability::FromEffectLong::match(), osl::move_probability::FromEffect::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareX::match(), osl::move_probability::SquareY::match(), osl::move_probability::ContinueCapture::match(), osl::rating::ImmediateEscape::match(), osl::rating::PtypeAttacked::match(), osl::rating::FromEffect::match(), osl::rating::ContinueCapture::match(), osl::rating::Karanari::matchGeneral(), osl::rating::DefenseKing8::matchMove(), newAddFrom(), osl::hash::HashKey::newMakeMove(), osl::hash::HashKey::newUnmakeMove(), osl::book::OMove::OMove(), osl::rating::Check::openLong(), osl::operator<<(), rotate180(), osl::record::KisenWriter::save(), osl::eval::See::seeInternal(), osl::record::KanjiMove::selectCandidates(), osl::psn::show(), osl::ki2::show(), osl::csa::show(), osl::psn::showXP(), osl::move_probability::ToEffect::supportAttack(), osl::SimpleState::testValidityOtherThanEffect(), toMove16(), osl::progress::PtypeProgress::update(), osl::progress::Effect5x3WithBonus::update(), osl::progress::ml::NewProgress::updateMain(), osl::eval::ml::KnightFork::updateSquares(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::NumEffectState::wasCheckEvasion().

const osl::Move osl::Move::fromMove16 ( Move16  move16,
const SimpleState state 
) [static]
unsigned int osl::Move::fromTo (  )  const [inline]

fromとtoをまとめて同一性の判定など

basic_type.h1139 行で定義されています。

参照先 move.

unsigned int osl::Move::hash (  )  const

駒を取らない手を [0, 16305] にmap

basic_type.cc309 行で定義されています。

参照先 capturePtype(), intValue(), と osl::PTYPE_EMPTY.

template<Player P>
bool osl::Move::hasIgnoredUnpromote (  )  const [inline]

MoveをunpromoteするとcutUnpromoteなMoveになる.

basic_type.h1309 行で定義されています。

参照先 osl::BLACK, isPromotion(), osl::PBISHOP, osl::PLANCE, player(), osl::PPAWN, osl::PROOK, ptype(), と to().

参照元 osl::NumEffectState::generateWithFullUnpromotions().

bool osl::Move::hasIgnoredUnpromote (  )  const [inline]

basic_type.h1322 行で定義されています。

参照先 osl::BLACK, と player().

template<Player P>
static bool osl::Move::ignoreUnpromote ( Ptype  ptype,
Square  from,
Square  to 
) [inline, static]
template<Player P>
bool osl::Move::ignoreUnpromote (  )  const [inline]

合法手ではあるが,打歩詰め絡み以外では有利にはならない手.

TODO 遅い

basic_type.h1296 行で定義されています。

参照先 from(), isDrop(), player(), ptype(), と to().

bool osl::Move::ignoreUnpromote (  )  const [inline]

basic_type.h1301 行で定義されています。

参照先 osl::BLACK, と player().

void osl::Move::init ( Square  from,
Square  to,
Ptype  ptype,
Ptype  capture_ptype,
bool  is_promote,
Player  player 
) [inline, private]

basic_type.h1073 行で定義されています。

参照先 BitOffsetPromote, move, と osl::Square::uintValue().

参照元 Move().

int osl::Move::intValue (  )  const [inline]
static const Move osl::Move::INVALID (  )  [inline, static]
bool osl::Move::isCapture (  )  const [inline]
bool osl::Move::isCaptureOrPromotion (  )  const [inline]

basic_type.h1149 行で定義されています。

参照先 isCapture(), と isPromotion().

参照元 osl::move_probability::CoverPawn::match().

bool osl::Move::isDrop (  )  const [inline]

basic_type.h1150 行で定義されています。

参照先 from(), isNormal(), と osl::Square::isPieceStand().

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::move_probability::MoveInfo::adhocAdjustSlider(), osl::checkmate::ProofPieces::attack(), osl::checkmate::OracleAdjust::attack(), osl::checkmate::Dfpn::attack(), osl::rating::BadLance::basicMatch(), osl::ShouldPromoteCut::canIgnoreAndNotDrop(), osl::ShouldPromoteCut::canIgnoreMove(), osl::checkmate::ProofNumberTable::countLiberty(), osl::move_probability::CoverFork::defending(), osl::checkmate::FixedDepthSearcher::defense(), osl::checkmate::DisproofPieces::defense(), osl::checkmate::Dfpn::defense(), osl::checkmate::FixedDepthSearcher::defenseEstimation(), osl::checkmate::LibertyEstimator::defenseH(), osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0(), osl::eval::ml::PieceEval::evalWithUpdate(), osl::eval::ml::PieceStand::evalWithUpdate(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeX::evalWithUpdate(), osl::eval::ml::PtypeY::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PieceStandY::evalWithUpdate(), osl::eval::ml::NonPawnPieceStandCombination::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PtypeCount::evalWithUpdateBang(), osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang(), osl::eval::ml::NonPawnAttacked::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::NonPawnPieceStandTurn::evalWithUpdateBang(), osl::move_probability::BlockLong::findAll(), osl::rating::AttackKing8Group::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::PtypeAttackedGroup::findMatch(), osl::rating::FromEffectGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), osl::rating::DropCapturedGroup::findMatchWithoutProgress(), osl::checkmate::FixedDepthSolverExt::hasCheckmateWithGuide(), osl::checkmate::Dfpn::hasEscapeMove(), ignoreUnpromote(), osl::rating::DropPtype::index(), osl::rating::PinAttack::index(), osl::rating::Open::index(), osl::rating::Threatmate::isCandidate(), osl::move_probability::BreakThreatmate::isDefendingThreatmate(), osl::move_classifier::ConditionAdaptor< Classifier >::isMember(), osl::move_probability::BreakThreatmate::isOpeningKingRoad(), isPawnDrop(), osl::checkmate::ProofDisproof::isPawnDropFoul(), osl::rating::LongTarget::isPromotable(), osl::rating::RelativeKingX::makeOldX(), osl::rating::RelativeKingY::makeOldY(), osl::rating::DropPtype::match(), osl::rating::PinAttack::match(), osl::rating::AttackKing8::match(), osl::rating::PawnAttack::match(), osl::rating::RookDefense::match(), osl::rating::Chase::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::LongRecapture::match(), osl::move_probability::BlockLongFrom::match(), osl::move_probability::ToEffectLong::match(), osl::move_probability::FromEffectLong::match(), osl::move_probability::FromEffect::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareX::match(), osl::move_probability::SquareY::match(), osl::move_probability::DropCaptured::match(), osl::move_probability::CheckFeature::match(), osl::rating::ImmediateEscape::match(), osl::rating::PtypeAttacked::match(), osl::rating::FromEffect::match(), osl::rating::DropCaptured::match(), osl::rating::DefenseKing8::matchDrop(), osl::rating::DefenseKing8::matchMove(), osl::move_probability::PawnAttack::matchPtype(), osl::PieceStand::nextStand(), osl::rating::Check::openLong(), osl::PieceStand::previousStand(), osl::checkmate::Dfpn::proofOracleAttack(), osl::record::KisenWriter::save(), osl::checkmate::FixedDepthSolverExt::SetProofPieces::setAttackLeaf(), osl::move_probability::MoveInfo::standIndex(), osl::record::KanjiMove::strToMove(), osl::move_probability::ToEffect::supportAttack(), toMove16(), osl::checkmate::Dfpn::ProofOracle::traceable(), osl::progress::PtypeProgress::update(), osl::progress::ml::NewProgress::updateMain(), osl::eval::ml::KnightFork::updateSquares(), osl::progress::Effect5x3::updateStand(), osl::progress::ml::NewProgress::updateSub(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::NumEffectState::wasCheckEvasion().

bool osl::Move::isInvalid (  )  const [inline]
bool osl::Move::isNormal (  )  const [inline]

INVALID でも PASS でもない.

isValid()かどうかは分からない.

basic_type.h1088 行で定義されています。

参照先 move.

参照元 osl::move_probability::MoveInfo::adhocAdjustBreakThreatmate(), osl::checkmate::Dfpn::attack(), capturePtype(), osl::checkmate::Dfpn::defense(), osl::csa::fancyShow(), osl::book::BookInMemory::find(), osl::checkmate::Dfpn::findDagSource(), osl::rating::ChaseGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), osl::rating::DropCapturedGroup::findMatchWithoutProgress(), osl::checkmate::DualDfpn::findProof(), osl::move_probability::StateInfo::findShortThreatmate(), osl::checkmate::Dfpn::grandParentSimulationSuitable(), osl::checkmate::FixedDepthSolverExt::hasCheckmateWithGuide(), osl::checkmate::Dfpn::hasEscapeMove(), osl::rating::ImmediateAddSupport::index(), osl::rating::BigramAttack::index(), osl::NumEffectState::isAlmostValidMove(), isCapture(), isDrop(), osl::checkmate::ProofDisproof::isPawnDropFoul(), isPromotion(), isValid(), osl::SimpleState::isValidMoveByRule(), osl::record::CsaFile::makeInfo(), osl::move_probability::BlockLong::makeLongAttackOne(), osl::rating::PawnAttack::match(), osl::rating::Chase::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::BreakThreatmate::match(), osl::rating::ImmediateAddSupport::match(), osl::rating::ImmediateEscape::match(), newAddFrom(), newFrom(), osl::PieceStand::nextStand(), osl::checkmate::FixedAttackHelper< P, SetPieces >::operator()(), osl::checkmate::ProofTreeDepthDfpn::orNode(), osl::usi::parse(), osl::kakinoki::KakinokiFile::parseLine(), osl::PieceStand::previousStand(), promote(), promoteMask(), osl::checkmate::Dfpn::proofOracleAttack(), osl::checkmate::Dfpn::proofOracleDefense(), osl::checkmate::ProofTreeDepthDfpn::retrievePV(), rotate180(), osl::usi::show(), osl::record::myshogi::show(), osl::ki2::show(), unpromote(), osl::NumEffectState::wasCheckEvasion(), と osl::checkmate::DualDfpn::writeRootHistory().

bool osl::Move::isPass (  )  const [inline]
bool osl::Move::isPawnDrop (  )  const [inline]

basic_type.h1151 行で定義されています。

参照先 isDrop(), と ptype().

bool osl::Move::isPromotion (  )  const [inline]
bool osl::Move::isValid (  )  const
bool osl::Move::isValidOrPass (  )  const [inline]

basic_type.h1205 行で定義されています。

参照先 isPass(), と isValid().

参照元 from(), osl::MoveLogProb::MoveLogProb(), oldPtype(), ptype(), osl::RepetitionCounter::push(), と to().

static const Move osl::Move::makeDirect ( int  value  )  [inline, static]
const Move osl::Move::newAddCapture ( Piece  capture  )  const [inline]
Move osl::Move::newAddFrom ( Square  new_from  )  const [inline]

basic_type.h1215 行で定義されています。

参照先 from(), intValue(), isNormal(), makeDirect(), と osl::Square::uintValue().

Move osl::Move::newAddPtype ( Ptype  newPtype  )  const [inline]

作ってあったPTYPE_EMPTYのひな形のPTYPEをsetする

basic_type.h1274 行で定義されています。

参照先 intValue(), makeDirect(), ptype(), と osl::PTYPE_EMPTY.

Move osl::Move::newAddTo ( Square  sq  )  const [inline]

つくってあったmoveの雛形のsquareをsetする. mのtoは0

basic_type.h1267 行で定義されています。

参照先 intValue(), makeDirect(), と osl::Square::uintValue().

Move osl::Move::newAddTo ( Offset  o  )  const [inline]
const Move osl::Move::newCapture ( Ptype  capture  )  const [inline]

basic_type.h1235 行で定義されています。

参照先 osl::Piece::BitOffsetPtype, intValue(), と makeDirect().

const Move osl::Move::newCapture ( Piece  capture  )  const [inline]
Move osl::Move::newFrom ( Square  new_from  )  const [inline]

basic_type.h1207 行で定義されています。

参照先 intValue(), isNormal(), makeDirect(), と osl::Square::uintValue().

参照元 osl::checkmate::OracleAdjust::attack().

Ptype osl::Move::oldPtype (  )  const [inline]
PtypeO osl::Move::oldPtypeO (  )  const [inline]
static const Move osl::Move::PASS ( Player  P  )  [inline, static]

basic_type.h1094 行で定義されています。

参照先 Move().

参照元 osl::record::CsaFile::makeInfo(), rotate180(), osl::usi::strToMove(), と osl::csa::strToMove().

Player osl::Move::player (  )  const [inline]

basic_type.h1195 行で定義されています。

参照先 isInvalid(), と move.

参照元 osl::checkmate::OracleAdjust::attack(), osl::rating::BadLance::basicMatch(), osl::ShouldPromoteCut::canIgnoreAndNotDrop(), capturePtypeO(), osl::checkmate::ProofNumberTable::countLiberty(), osl::checkmate::CheckmateIfCapture::effectiveAttack(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::eval::ml::PieceEval::evalWithUpdate(), osl::eval::ml::PieceStand::evalWithUpdate(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PtypeCount::evalWithUpdateBang(), osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::NonPawnPieceStandTurn::evalWithUpdateBang(), osl::eval::ml::OpenMidEndingEval::expect(), osl::progress::Effect5x3WithBonus::expect(), osl::progress::Effect5x3::expect(), osl::rating::PatternLong2::find(), osl::rating::PatternLong::find(), osl::move_probability::BlockLongFrom::findAll(), osl::move_probability::BlockLong::findAll(), osl::checkmate::Dfpn::findDagSource(), osl::eval::See::findEffectPiecesAfterMove(), osl::rating::PatternBlockGroup::findMatch(), osl::rating::PatternLongGroup2::findMatch(), osl::rating::PatternLongGroup::findMatch(), osl::rating::PatternGroup::findMatch(), osl::rating::AttackKing8Group::findMatch(), osl::rating::BadLanceGroup::findMatch(), osl::rating::PtypeAttackedGroup::findMatch(), osl::rating::ShadowEffectGroup::findMatch(), hasIgnoredUnpromote(), ignoreUnpromote(), osl::rating::Karanari::index(), osl::rating::Open::index(), osl::rating::BigramAttack::index(), osl::rating::BigramAttack::indexOfMove(), osl::SimpleState::isAlmostValidDrop(), osl::SimpleState::isAlmostValidMove(), osl::NumEffectState::isAlmostValidMove(), osl::move_classifier::PlayerMoveAdaptor< Classifier >::isMember(), osl::rating::LongTarget::isPromotable(), isValid(), osl::SimpleState::isValidMove(), osl::SimpleState::isValidMoveByRule(), osl::NumEffectState::makeMove(), osl::rating::RelativeKingX::makeOldX(), osl::rating::RelativeKingY::makeOldY(), osl::NumEffectState::makeUnmakeMove(), osl::rating::RelativeKingX::makeX(), osl::rating::SquareY::makeY(), osl::rating::RelativeKingY::makeY(), osl::rating::PatternBlock::match(), osl::rating::LongTarget2::match(), osl::rating::LongTarget::match(), osl::rating::Pattern::match(), osl::rating::AttackKing8::match(), osl::rating::Karanari::match(), osl::rating::BadLance::match(), osl::rating::RookDefense::match(), osl::move_probability::LureDefender::match(), osl::rating::ToSupported::match(), osl::rating::PtypeAttacked::match(), osl::rating::CheckmateIfCapture::match(), osl::rating::ShadowEffect2::match(), osl::rating::ShadowEffect1::match(), osl::rating::LongTarget::matchOtherThanPromotable(), osl::hash::HashKey::newMakeMove(), osl::checkmate::Dfpn::ProofOracle::newOracle(), osl::hash::HashKey::newUnmakeMove(), osl::checkmate::Dfpn::Tree::newVisit(), osl::rating::Pattern::nextSquare(), osl::PieceStand::nextStand(), osl::checkmate::Dfpn::Node::nextWhiteStand(), osl::book::OMove::OMove(), osl::rating::Check::openLong(), osl::operator<<(), osl::PathEncoding::popMove(), osl::PieceStand::previousStand(), osl::RepetitionCounter::push(), osl::PathEncoding::pushMove(), rotate180(), osl::record::KisenWriter::save(), osl::eval::See::see(), osl::ki2::show(), osl::csa::show(), osl::psn::showXP(), osl::checkmate::Dfpn::ProofOracle::traceable(), osl::eval::ml::OpenMidEndingEval::update(), osl::progress::Effect5x3::update(), osl::progress::ml::NewProgress::updateMain(), と osl::eval::ml::OpenMidEndingEval::updateSub().

const Move osl::Move::promote (  )  const [inline]
int osl::Move::promoteMask (  )  const [inline]

pieceに使うためのmaskなので

basic_type.h1143 行で定義されています。

参照先 BitOffsetPromote, isNormal(), と move.

参照元 osl::NumEffectState::makeMove(), osl::NumEffectState::makeUnmakeMove(), osl::operator<<(), と osl::psn::show().

Ptype osl::Move::ptype (  )  const [inline]

basic_type.h1155 行で定義されています。

参照先 isInvalid(), isValidOrPass(), move, と move_assert.

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::checkmate::ProofPieces::attack(), osl::checkmate::OracleAdjust::attack(), osl::checkmate::FixedDepthSearcher::attack(), osl::checkmate::Dfpn::attack(), osl::checkmate::attackProofCost(), osl::rating::BadLance::basicMatch(), osl::ShouldPromoteCut::canIgnoreMove(), osl::checkmate::ProofNumberTable::countLiberty(), osl::checkmate::FixedDepthSearcher::defense(), osl::checkmate::DisproofPieces::defense(), osl::checkmate::FixedDepthSearcher::defenseEstimation(), osl::checkmate::LibertyEstimator::defenseH(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::eval::ml::PieceStand::evalWithUpdate(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PromotedMinorPieces::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeX::evalWithUpdate(), osl::eval::ml::PtypeY::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PieceStandY::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::PtypeCount::evalWithUpdateBang(), osl::eval::ml::NonPawnAttacked::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::NonPawnPieceStandTurn::evalWithUpdateBang(), osl::move_probability::BlockLong::findAll(), osl::rating::EscapePinGroup::findMatch(), osl::rating::PatternBlockGroup::findMatch(), osl::rating::PatternLongGroup2::findMatch(), osl::rating::PatternLongGroup::findMatch(), osl::rating::PatternGroup::findMatch(), osl::rating::DefenseKing8Group::findMatch(), osl::rating::AttackKing8Group::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::KingEscapeGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), osl::rating::DropCapturedGroup::findMatchWithoutProgress(), fromMove16(), osl::checkmate::FixedDepthSolverExt::hasCheckmateWithGuide(), osl::checkmate::Dfpn::hasEscapeMove(), hasIgnoredUnpromote(), osl::checkmate::PawnCheckmateMoves::hasParingNoPromote(), ignoreUnpromote(), osl::rating::RelativeKingY::index(), osl::rating::RelativeKingX::index(), osl::rating::DropPtype::index(), osl::rating::PinAttack::index(), osl::rating::Karanari::index(), osl::rating::ImmediateAddSupport::index(), osl::SimpleState::isAlmostValidDrop(), osl::move_probability::BreakThreatmate::isKingMove(), osl::move_classifier::PlayerMoveAdaptor< Classifier >::isMember(), osl::move_classifier::MoveAdaptor< Classifier >::isMember(), isPawnDrop(), osl::checkmate::ProofDisproof::isPawnDropFoul(), isValid(), osl::SimpleState::isValidMoveByRule(), osl::rating::Threatmate::knight2Step(), osl::NumEffectState::makeMove(), osl::NumEffectState::makeUnmakeMove(), osl::rating::RelativeKingY::match(), osl::rating::RelativeKingX::match(), osl::rating::DropPtype::match(), osl::rating::EscapePin::match(), osl::rating::PinAttack::match(), osl::rating::PatternBlock::match(), osl::rating::PatternLong2::match(), osl::rating::PatternLong::match(), osl::rating::Pattern::match(), osl::rating::DefenseKing8::match(), osl::rating::AttackKing8::match(), osl::rating::Karanari::match(), osl::rating::PawnAttack::match(), osl::rating::Chase::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::ThreatmateByCapture::match(), osl::move_probability::CoverFork::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::CoverPawn::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::AttackKing8Long::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::LureDefender::match(), osl::move_probability::SendOff::match(), osl::move_probability::BreakThreatmate::match(), osl::move_probability::RookAttack::match(), osl::move_probability::BishopAttack::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::AddEffectLong::match(), osl::move_probability::LongRecapture::match(), osl::move_probability::PawnAttack::match(), osl::move_probability::AttackToOpposingSliders::match(), osl::move_probability::AttackFromOpposingSliders::match(), osl::move_probability::MoveFromOpposingSliders::match(), osl::move_probability::PatternBase< TestPromotable >::match(), osl::move_probability::ToEffect::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareX::match(), osl::move_probability::SquareY::match(), osl::move_probability::DropCaptured::match(), osl::move_probability::CapturePtype::match(), osl::move_probability::CheckFeature::match(), osl::rating::ImmediateAddSupport::match(), osl::rating::KingEscape::match(), osl::rating::ImmediateEscape::match(), osl::rating::DropCaptured::match(), osl::rating::DefenseKing8::matchMove(), newAddPtype(), osl::PieceStand::nextStand(), osl::book::OMove::OMove(), osl::operator<<(), osl::PieceStand::previousStand(), promote(), osl::checkmate::Dfpn::proofOracleAttack(), rotate180(), osl::record::KisenWriter::save(), osl::checkmate::FixedDepthSolverExt::SetProofPieces::setAttackLeaf(), osl::psn::show(), osl::csa::show(), osl::psn::showXP(), osl::move_probability::MoveInfo::standIndex(), osl::SimpleState::testValidityOtherThanEffect(), toMove16(), osl::checkmate::Dfpn::ProofOracle::traceable(), unpromote(), osl::progress::Effect5x3::update(), osl::eval::ml::NonPawnAttackedPtype::updateChanged(), osl::progress::ml::NewProgress::updateMain(), osl::eval::ml::KnightFork::updateSquares(), osl::progress::Effect5x3::updateStand(), osl::progress::ml::NewProgress::updateSub(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::NumEffectState::wasCheckEvasion().

PtypeO osl::Move::ptypeO (  )  const [inline]

移動後のPtype, i.e., 成る手だった場合成った後

basic_type.h1162 行で定義されています。

参照先 isInvalid(), と move.

参照元 osl::move_probability::MoveInfo::adhocAdjustKeepCheckmateDefender(), osl::move_probability::KingBlockade::blockAll(), osl::eval::See::computeValue(), osl::move_probability::CoverFork::defending(), osl::eval::PtypeEvalTable::diffWithMove(), osl::eval::ml::PieceEval::evalWithUpdate(), osl::eval::ml::PiecePair::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PtypeCount::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::rating::AttackKing8Group::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), osl::move_probability::StateInfo::findShortThreatmate(), osl::rating::PinAttack::index(), osl::rating::ImmediateAddSupport::index(), osl::rating::Threatmate::isCandidate(), osl::move_probability::BreakThreatmate::isDefendingKing8(), osl::move_probability::BreakThreatmate::isDefendingThreatmate(), osl::rating::PinAttack::match(), osl::rating::AttackKing8::match(), osl::rating::Chase::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::KingBlockade::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::CoverPawn::match(), osl::move_probability::AttackKing8Long::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::LureDefender::match(), osl::move_probability::AttackToOpposingSliders::match(), osl::rating::ImmediateEscape::match(), osl::rating::DefenseKing8::matchDrop(), osl::rating::Karanari::matchGeneral(), osl::rating::DefenseKing8::matchMove(), osl::hash::HashKey::newMakeMove(), osl::hash::HashKey::newUnmakeMove(), osl::operator<<(), と osl::progress::PtypeProgress::update().

const osl::Move osl::Move::rotate180 (  )  const

basic_type.cc262 行で定義されています。

参照先 osl::alt(), capturePtype(), from(), isNormal(), isPass(), isPromotion(), Move(), PASS(), player(), ptype(), と to().

const Square osl::Move::to (  )  const [inline]

basic_type.h1132 行で定義されています。

参照先 isInvalid(), isValidOrPass(), makeDirect(), move, と move_assert.

参照元 osl::move_probability::King5x5Ptype::addOne(), osl::move_probability::AddEffectLong::addOne(), osl::move_probability::MoveInfo::adhocAdjustAttackCheckmateDefender(), osl::move_probability::MoveInfo::adhocAdjustBishopFork(), osl::move_probability::MoveInfo::adhocAdjustBreakThreatmate(), osl::move_probability::MoveInfo::adhocAdjustKeepCheckmateDefender(), osl::move_probability::MoveInfo::adhocAdjustSlider(), osl::checkmate::OracleAdjust::attack(), osl::checkmate::FixedDepthSearcher::attack(), osl::checkmate::LibertyEstimator::attackH(), osl::checkmate::attackProofCost(), osl::move_probability::KingBlockade::blockAll(), osl::checkmate::Dfpn::blockingSimulation(), osl::ShouldPromoteCut::canIgnoreMove(), osl::rating::Threatmate::captureForKnightCheck(), osl::eval::See::computeValue(), osl::checkmate::ProofNumberTable::countLiberty(), osl::move_probability::CoverFork::defending(), osl::checkmate::Dfpn::defense(), osl::checkmate::LibertyEstimator::defenseH(), osl::checkmate::CheckmateIfCapture::effectiveAttackCandidate0(), osl::checkmate::PawnCheckmateMoves::effectiveOnlyIfPawnCheckmate(), osl::eval::ml::PiecePair::evalWithUpdate(), osl::eval::ml::PawnDropBoth::evalWithUpdate(), osl::eval::ml::PawnPtypeOPtypeO::evalWithUpdate(), osl::eval::ml::PtypeX::evalWithUpdate(), osl::eval::ml::PtypeY::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::King25EmptyAbs< Opening >::evalWithUpdate(), osl::eval::ml::King25EffectEachBoth::evalWithUpdate(), osl::eval::ml::King25EmptySquareNoEffect::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::KingPieceRelative::evalWithUpdate(), osl::eval::ml::PiecePairKing::evalWithUpdateBang(), osl::eval::ml::PtypeYPawnY::evalWithUpdateBang(), osl::eval::ml::NonPawnAttackedPtype::evalWithUpdateBang(), osl::eval::ml::NonPawnAttacked::evalWithUpdateBang(), osl::eval::ml::PawnAdvanceAll::evalWithUpdateBang(), osl::eval::ml::KingXBlockedYBase::evalWithUpdateBang(), osl::eval::ml::King8EffectBase::evalWithUpdateCommon(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::rating::PatternLong2::find(), osl::rating::PatternBlock::find(), osl::rating::PatternLong::find(), osl::move_probability::BlockLong::findAll(), osl::eval::See::findEffectPiecesAfterMove(), osl::rating::PatternGroup::findMatch(), osl::rating::AttackKing8Group::findMatch(), osl::rating::BadLanceGroup::findMatch(), osl::rating::BlockGroup::findMatch(), osl::rating::SendOffGroup::findMatch(), osl::rating::TakeBackGroup::findMatch(), osl::rating::ChaseGroup::findMatch(), osl::rating::ShadowEffectGroup::findMatch(), osl::rating::ImmediateEscapeGroup::findMatchWithoutProgress(), osl::move_probability::StateInfo::findShortThreatmate(), fromMove16(), osl::checkmate::Dfpn::grandParentSimulationSuitable(), osl::checkmate::FixedDepthSolverExt::hasCheckmateWithGuide(), hasIgnoredUnpromote(), ignoreUnpromote(), osl::rating::PinAttack::index(), osl::rating::Karanari::index(), osl::rating::ImmediateAddSupport::index(), osl::rating::BigramAttack::indexOfMove(), osl::SimpleState::isAlmostValidDrop(), osl::SimpleState::isAlmostValidMove(), osl::NumEffectState::isAlmostValidMove(), osl::rating::Threatmate::isCandidate(), osl::NumEffectState::isConsistent(), osl::move_probability::BreakThreatmate::isDefendingKing8(), osl::move_probability::BreakThreatmate::isDefendingThreatmate(), osl::move_classifier::PlayerMoveAdaptor< Classifier >::isMember(), osl::move_classifier::MoveAdaptor< Classifier >::isMember(), osl::rating::LongTarget::isPromotable(), isValid(), osl::SimpleState::isValidMoveByRule(), osl::rating::Threatmate::knight2Step(), osl::move_probability::BlockLong::makeLongAttackOne(), osl::NumEffectState::makeMove(), osl::NumEffectState::makeUnmakeMove(), osl::rating::SquareX::makeX(), osl::rating::RelativeKingX::makeX(), osl::rating::SquareY::makeY(), osl::rating::RelativeKingY::makeY(), osl::rating::PinAttack::match(), osl::rating::AttackKing8::match(), osl::rating::Karanari::match(), osl::rating::PawnAttack::match(), osl::rating::BadLance::match(), osl::rating::RookDefense::match(), osl::rating::Chase::match(), osl::rating::Block::match(), osl::rating::SendOff::match(), osl::rating::TakeBack2::match(), osl::rating::TakeBack::match(), osl::move_probability::EscapeThreatened::match(), osl::move_probability::PromotionBySacrifice::match(), osl::move_probability::KingBlockade::match(), osl::move_probability::SacrificeAttack::match(), osl::move_probability::CoverPawn::match(), osl::move_probability::DropAfterOpposingPawn::match(), osl::move_probability::OpposingPawn::match(), osl::move_probability::AttackKing8Long::match(), osl::move_probability::CheckmateIfCapture::match(), osl::move_probability::LureDefender::match(), osl::move_probability::SendOff::match(), osl::move_probability::BreakThreatmate::match(), osl::move_probability::RookAttack::match(), osl::move_probability::BishopAttack::match(), osl::move_probability::LanceAttack::match(), osl::move_probability::LongRecapture::match(), osl::move_probability::PawnAttack::match(), osl::move_probability::AttackToOpposingSliders::match(), osl::move_probability::AttackFromOpposingSliders::match(), osl::move_probability::PatternBase< TestPromotable >::match(), osl::move_probability::ToEffectLong::match(), osl::move_probability::ToEffect::match(), osl::move_probability::KingRelativeX::match(), osl::move_probability::KingRelativeY::match(), osl::move_probability::SquareX::match(), osl::move_probability::SquareY::match(), osl::move_probability::SeeFeature::match(), osl::move_probability::TakeBackFeature::match(), osl::rating::ImmediateAddSupport::match(), osl::rating::ImmediateEscape::match(), osl::rating::ToSupported::match(), osl::rating::CheckmateIfCapture::match(), osl::rating::ShadowEffect2::match(), osl::rating::ShadowEffect1::match(), osl::rating::DefenseKing8::matchDrop(), osl::rating::Karanari::matchGeneral(), osl::rating::DefenseKing8::matchMove(), osl::move_probability::PawnAttack::matchPtype(), osl::hash::HashKey::newMakeMove(), osl::hash::HashKey::newUnmakeMove(), osl::rating::Pattern::nextSquare(), osl::book::OMove::OMove(), osl::operator<<(), osl::record::KanjiPrint::print(), osl::checkmate::Dfpn::proofOracleDefense(), rotate180(), osl::record::KisenWriter::save(), osl::eval::See::seeInternal(), osl::psn::show(), osl::record::myshogi::show(), osl::ki2::show(), osl::csa::show(), osl::psn::showXP(), osl::move_probability::CheckFeature::sign(), osl::record::KanjiMove::strToMove(), osl::kakinoki::strToMove(), osl::SimpleState::testValidityOtherThanEffect(), toMove16(), osl::progress::PtypeProgress::update(), osl::progress::Effect5x3WithBonus::update(), osl::progress::ml::NewProgress::updateMain(), osl::eval::ml::KnightFork::updateSquares(), osl::eval::ml::OpenMidEndingEval::updateSub(), と osl::NumEffectState::wasCheckEvasion().

osl::Move16 osl::Move::toMove16 (  )  const

basic_type.cc336 行で定義されています。

参照先 osl::SquareCompressor::compress(), from(), isDrop(), isInvalid(), isPromotion(), ptype(), と to().

const Move osl::Move::unpromote (  )  const [inline]

promote moveからunpromote moveを作る

basic_type.h1243 行で定義されています。

参照先 BitOffsetPromote, intValue(), isNormal(), osl::isPromoted(), isPromotion(), makeDirect(), move_assert, と ptype().

参照元 osl::NumEffectState::generateWithFullUnpromotions().


変数

basic_type.h1054 行で定義されています。

参照元 init(), isPromotion(), oldPtype(), oldPtypeO(), promote(), promoteMask(), と unpromote().

const unsigned int osl::Move::MaxUniqMoves = 600 [static]

一局面辺りの合法手の最大値 重複して手を生成することがある場合は,600では不足かもしれない

basic_type.h1071 行で定義されています。

int osl::Move::move [private]

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