osl::rating::LongTarget Struct Reference

`#include <pattern.h>`

Inheritance diagram for osl::rating::LongTarget:

## Public Member Functions

| LongTarget (Ptype t, bool p, bool s, int attack, int defense)
bool | match (const NumEffectState &state, Move move, PieceSquare p, const RatingEnv &env) const
bool | matchOtherThanPromotable (const NumEffectState &state, Move move, PieceSquare p, const RatingEnv &env) const
const std::string | name () const
Public Member Functions inherited from osl::rating::CountEffect2
| CountEffect2 (int a, int d)
bool | match (const NumEffectState &state, Square position, const RatingEnv &env) const

## Static Public Member Functions

static bool | isPromotable (Move move, Square position)
Static Public Member Functions inherited from osl::rating::CountEffect2
static std::pair< int, int > | count (const NumEffectState &state, Square position, const RatingEnv &env)
static std::string | name (int attack, int defense)
static int | index (const NumEffectState &state, Square position, const RatingEnv &env)

## Public Attributes

Ptype | target
bool | promotable
bool | same
Public Attributes inherited from osl::rating::CountEffect2
int | attack
int | defense

## Additional Inherited Members

Static Public Attributes inherited from osl::rating::CountEffect2
static const int | Max = 2

## Detailed Description

Definition at line 61 of file pattern.h.

## Constructor & Destructor Documentation

## LongTarget()

osl::rating::LongTarget::LongTarget | ( | Ptype | t,
|  | bool | p,
|  | bool | s,
|  | int | attack,
|  | int | defense )

inline

Definition at line 65 of file pattern.h.

References osl::rating::CountEffect2::attack, osl::rating::CountEffect2::CountEffect2(), osl::rating::CountEffect2::defense, promotable, same, and target.

## Member Function Documentation

## isPromotable()

bool osl::rating::LongTarget::isPromotable | ( | Move | move,
|  | Square | position )

inline static

Definition at line 69 of file pattern.h.

References osl::Square::canPromote(), osl::Move::isDrop(), osl::Square::isOnBoard(), osl::Move::player(), and osl::Move::to().

Referenced by osl::rating::PatternLongGroup::findMatch(), and match().

## match()

bool osl::rating::LongTarget::match | ( | const NumEffectState & | state,
|  | Move | move,
|  | PieceSquare | p,
|  | const RatingEnv & | env ) const

inline

Definition at line 74 of file pattern.h.

References isPromotable(), osl::rating::CountEffect2::match(), osl::Move::player(), promotable, osl::PTYPE_EDGE, same, and target.

## matchOtherThanPromotable()

bool osl::rating::LongTarget::matchOtherThanPromotable | ( | const NumEffectState & | state,
|  | Move | move,
|  | PieceSquare | p,
|  | const RatingEnv & | env ) const

inline

Definition at line 88 of file pattern.h.

References osl::rating::CountEffect2::match(), osl::Move::player(), osl::PTYPE_EDGE, same, and target.

## name()

const std::string osl::rating::LongTarget::name | ( |  | ) | const

Definition at line 17 of file pattern.cc.

References osl::rating::CountEffect2::attack, osl::rating::CountEffect2::defense, osl::rating::CountEffect2::name(), promotable, osl::Ptype_Table, same, and target.

## Member Data Documentation

## promotable

bool osl::rating::LongTarget::promotable

Definition at line 64 of file pattern.h.

Referenced by LongTarget(), match(), and name().

## same

bool osl::rating::LongTarget::same

Definition at line 64 of file pattern.h.

Referenced by LongTarget(), match(), matchOtherThanPromotable(), and name().

## target

Ptype osl::rating::LongTarget::target

Definition at line 63 of file pattern.h.

Referenced by LongTarget(), match(), matchOtherThanPromotable(), and name().

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

- pattern.h
- pattern.cc