[−][src]Struct rustenginelib::state::State
State records the state of a chess game
Fields
turn: Color
move_buff: Vec<MoveBuffItem>
Implementations
impl State
[src]
State implementation
pub fn parse_piece_placement(&mut self, fen: &str)
[src]
parses piece placement
pub fn new() -> State
[src]
creates a new empty State
pub fn set_from_fen(&mut self, fen: &str)
[src]
sets state from fen
pub fn put(&mut self, sq: Square, p: Piece)
[src]
pub fn remove(&mut self, sq: Square)
[src]
pub fn init(&mut self, variant: Variant)
[src]
initializes state to variant
pub fn piece_at_square(&self, sq: Square) -> Piece
[src]
returns the piece at a square
pub fn report_fen(&self) -> String
[src]
reports the state as fen
pub fn print_bitboards(&self)
[src]
prints bitboards
pub fn color_figure_mobility_at_square(
&self,
sq: Square,
gen_mode: MoveGenMode,
col: Color,
fig: Figure
) -> Bitboard
[src]
&self,
sq: Square,
gen_mode: MoveGenMode,
col: Color,
fig: Figure
) -> Bitboard
returns mobility of color figure at square
pub fn generate_pseudo_legal_moves(
&mut self,
gen_mode: MoveGenMode
) -> Vec<Move>
[src]
&mut self,
gen_mode: MoveGenMode
) -> Vec<Move>
generates pseudo legal moves for turn
pub fn generate_pseudo_legal_moves_for_color(
&self,
gen_mode: MoveGenMode,
col: Color
) -> Vec<Move>
[src]
&self,
gen_mode: MoveGenMode,
col: Color
) -> Vec<Move>
generates pseudo legal moves for color
pub fn pretty_print_string(&mut self) -> String
[src]
returns the state as pretty printable string
pub fn gen_move_buff(&mut self) -> String
[src]
generates moves with meta information
pub fn init_variant(&self)
[src]
initialize from variant
pub fn variant_start_fen(&self) -> &str
[src]
returns the start fen for the variant of the state
pub fn make_move(&mut self, mv: Move)
[src]
makes a move
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for State
impl Send for State
impl Sync for State
impl Unpin for State
impl UnwindSafe for State
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,
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.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
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.
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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,