Remove Display trait from main structs
This commit is contained in:
40
src/board.rs
40
src/board.rs
@@ -1,4 +1,3 @@
|
||||
use std::fmt;
|
||||
use u64 as Bitboard;
|
||||
|
||||
use crate::attack::{
|
||||
@@ -139,28 +138,7 @@ impl Default for Board {
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Display for Board {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
for piece in &self.white_pieces {
|
||||
writeln!(
|
||||
f,
|
||||
"Color: {:?}\nKind: {:?}\n{piece}",
|
||||
piece.color, piece.kind
|
||||
)?;
|
||||
}
|
||||
writeln!(f)?;
|
||||
for piece in &self.black_pieces {
|
||||
writeln!(
|
||||
f,
|
||||
"Color: {:?}\nKind: {:?}\n{piece}",
|
||||
piece.color, piece.kind
|
||||
)?;
|
||||
}
|
||||
writeln!(f)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, PartialEq, Eq)]
|
||||
#[derive(Debug, PartialEq, Eq, Clone)]
|
||||
pub struct Piece {
|
||||
pub bitboard: Bitboard,
|
||||
pub kind: Kind,
|
||||
@@ -177,21 +155,7 @@ impl Piece {
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Display for Piece {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
for rank in (0..8).rev() {
|
||||
for file in 0..8 {
|
||||
let square = 1 << (rank * 8 + file);
|
||||
let position = if square & self.bitboard != 0x0 { 1 } else { 0 };
|
||||
write!(f, "{} ", position)?;
|
||||
}
|
||||
writeln!(f)?;
|
||||
}
|
||||
writeln!(f)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, PartialEq, Eq, Copy, Clone)]
|
||||
#[derive(Debug, PartialEq, Eq, Clone, Copy)]
|
||||
pub enum Kind {
|
||||
Pawn,
|
||||
Knight,
|
||||
|
||||
Reference in New Issue
Block a user