[−][src]Enum myopic_core::Piece
Value type wrapping a single integer representing one of the 12 different pieces in a game of chess.
Variants
Implementations
impl Piece
[src]
pub fn all() -> impl Iterator<Item = Piece>
[src]
Create an iterator traversing over all pieces in order.
pub fn whites() -> impl Iterator<Item = Piece>
[src]
Create an iterator traversing over all white pieces in order.
pub fn blacks() -> impl Iterator<Item = Piece>
[src]
Create an iterator traversing over all black pieces in order.
pub fn king(side: Side) -> Piece
[src]
Returns the king which belongs to the given side.
pub fn queen(side: Side) -> Piece
[src]
Returns the queen which belongs to the given side.
pub fn rook(side: Side) -> Piece
[src]
Returns the rook belonging to the given side.
pub fn pawn(side: Side) -> Piece
[src]
Returns the pawn which belongs to the given side.
pub fn of(side: Side) -> impl Iterator<Item = Piece>
[src]
Returns a slice containing all pieces belonging to the given side.
pub fn side(self) -> Side
[src]
Returns the side that this piece belongs to.
pub fn is_pawn(self) -> bool
[src]
Checks whether this piece is either a white or black pawn.
pub fn is_knight(self) -> bool
[src]
Checks whether this piece is either a white or black knight.
pub fn control(
self,
loc: Square,
whites: BitBoard,
blacks: BitBoard
) -> BitBoard
[src]
self,
loc: Square,
whites: BitBoard,
blacks: BitBoard
) -> BitBoard
Computes the control set for this piece given it's location and the locations of all the white and black pieces on the board.
pub fn empty_control(self, loc: Square) -> BitBoard
[src]
Computes the control set for this piece given it's location on an empty board.
pub fn moves(self, loc: Square, whites: BitBoard, blacks: BitBoard) -> BitBoard
[src]
Computes the set of legal moves for this piece given it's location and the locations of all the white and black pieces on the board. Note that this method does not take into account special restrictions for or due to the king, e.g. can't move in such a way to put the king into check.
Trait Implementations
impl Clone for Piece
[src]
impl Copy for Piece
[src]
impl Debug for Piece
[src]
impl Display for Piece
[src]
impl Eq for Piece
[src]
impl FromStr for Piece
[src]
type Err = Error
The associated error which can be returned from parsing.
pub fn from_str(s: &str) -> Result<Self, Self::Err>
[src]
impl Hash for Piece
[src]
pub fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for Piece
[src]
pub fn cmp(&self, other: &Piece) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<Piece> for Piece
[src]
pub fn eq(&self, other: &Piece) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl PartialOrd<Piece> for Piece
[src]
pub fn partial_cmp(&self, other: &Piece) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl Reflectable for Piece
[src]
We reflect a piece to it's correspondent on the opposite side.
impl StructuralEq for Piece
[src]
impl StructuralPartialEq for Piece
[src]
Auto Trait Implementations
impl RefUnwindSafe for Piece
[src]
impl Send for Piece
[src]
impl Sync for Piece
[src]
impl Unpin for Piece
[src]
impl UnwindSafe for Piece
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,