[−][src]Trait legal_chess::pieces::piece::Piece
Required methods
fn position(&self) -> &Position
fn mut_position(&mut self) -> &mut Position
fn attacks(&self, board: &Board, enemy_king_pos: Position) -> Vec<Position>
fn color(&self) -> &Color
fn piece(&self) -> PieceEnum
fn moves_ignoring_pins(
&self,
board: &Board,
en_passant: &Option<Position>,
king_pos: Position
) -> Vec<ChessMove>
&self,
board: &Board,
en_passant: &Option<Position>,
king_pos: Position
) -> Vec<ChessMove>
Provided methods
fn set_position(&mut self, position: &Position)
fn moves(
&self,
board: &Board,
king: Position,
en_passant: &Option<Position>
) -> Vec<ChessMove>
&self,
board: &Board,
king: Position,
en_passant: &Option<Position>
) -> Vec<ChessMove>
fn valid_moves_during_pin(
&self,
board: &Board,
king: Position
) -> Option<Vec<Position>>
&self,
board: &Board,
king: Position
) -> Option<Vec<Position>>
Implementors
impl Piece for Bishop
[src]
fn color(&self) -> &Color
[src]
fn position(&self) -> &Position
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn attacks(&self, board: &Board, enemy_king_pos: Position) -> Vec<Position>
[src]
fn piece(&self) -> PieceEnum
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
impl Piece for King
[src]
fn color(&self) -> &Color
[src]
fn position(&self) -> &Position
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn piece(&self) -> PieceEnum
[src]
fn attacks(&self, _board: &Board, _enemy_king_pos: Position) -> Vec<Position>
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
impl Piece for Knight
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
fn piece(&self) -> PieceEnum
[src]
fn attacks(&self, _board: &Board, _enemy_king_pos: Position) -> Vec<Position>
[src]
fn position(&self) -> &Position
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn color(&self) -> &Color
[src]
impl Piece for Pawn
[src]
fn piece(&self) -> PieceEnum
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn attacks(&self, _board: &Board, _enemy_king_pos: Position) -> Vec<Position>
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
en_passant: &Option<Position>,
king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
en_passant: &Option<Position>,
king_pos: Position
) -> Vec<ChessMove>
fn position(&self) -> &Position
[src]
fn color(&self) -> &Color
[src]
impl Piece for Queen
[src]
fn color(&self) -> &Color
[src]
fn position(&self) -> &Position
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn piece(&self) -> PieceEnum
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
fn attacks(&self, board: &Board, enemy_king_pos: Position) -> Vec<Position>
[src]
impl Piece for Rook
[src]
fn color(&self) -> &Color
[src]
fn position(&self) -> &Position
[src]
fn mut_position(&mut self) -> &mut Position
[src]
fn piece(&self) -> PieceEnum
[src]
fn attacks(&self, board: &Board, enemy_king_pos: Position) -> Vec<Position>
[src]
fn moves_ignoring_pins(
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>
[src]
&self,
board: &Board,
_en_passant: &Option<Position>,
_king_pos: Position
) -> Vec<ChessMove>