Trait myopic_core::Reflectable[][src]

pub trait Reflectable {
    fn reflect(&self) -> Self;
}

Chess is a symmetric game and this trait represents a component of the game which can be reflected to it’s symmetric opposite component.

Required methods

fn reflect(&self) -> Self[src]

Loading content...

Implementations on Foreign Types

impl Reflectable for i32[src]

fn reflect(&self) -> Self[src]

impl<T: Reflectable> Reflectable for Vec<T>[src]

fn reflect(&self) -> Self[src]

impl<T: Reflectable> Reflectable for Option<T>[src]

fn reflect(&self) -> Self[src]

impl<T1, T2> Reflectable for (T1, T2) where
    T1: Reflectable,
    T2: Reflectable
[src]

fn reflect(&self) -> Self[src]

impl<T1, T2, T3> Reflectable for (T1, T2, T3) where
    T1: Reflectable,
    T2: Reflectable,
    T3: Reflectable
[src]

fn reflect(&self) -> Self[src]

impl<T: Reflectable + Ord> Reflectable for BTreeSet<T>[src]

fn reflect(&self) -> Self[src]

impl<T: Reflectable + EnumSetType> Reflectable for EnumSet<T>[src]

fn reflect(&self) -> Self[src]

Loading content...

Implementors

impl Reflectable for CastleZone[src]

A castle is reflected by it’s side, i.e.

  • WK <==> BK
  • WQ <==> BQ

fn reflect(&self) -> Self[src]

impl Reflectable for Dir[src]

fn reflect(&self) -> Self[src]

impl Reflectable for Piece[src]

We reflect a piece to it’s correspondent on the opposite side.

fn reflect(&self) -> Self[src]

impl Reflectable for Side[src]

fn reflect(&self) -> Self[src]

impl Reflectable for Square[src]

fn reflect(&self) -> Self[src]

impl Reflectable for BitBoard[src]

fn reflect(&self) -> Self[src]

Loading content...