hieu-chess 0.1.0

a simple chess library that handles move generations, move validation, board representation and piece placements
Documentation
pub const COLOR_MASK: u8 = 128; // 1000 0000

pub const BLACK_PAWN_DELTAS: &'static [i8; 4] = &[-16, -32, -17, -15];
pub const WHITE_PAWN_DELTAS: &'static [i8; 4] = &[16, 32, 17, 15];
pub const BISHOP_DELTAS: &'static [i8; 4] = &[17, 15, -17, -15];
pub const ROOK_DELTAS: &'static [i8; 4] = &[16, -16, 1, -1];
pub const QUEEN_DELTAS: &'static [i8; 8] = &[16, -16, 1, -1, 17, 15, -17, -15];
pub const KNIGHT_DELTAS: &'static [i8; 8] = &[14, 31, 18, 33, -14, -31, -18, -33];
pub const KING_DELTAS: &'static [i8; 10] = &[1, 16, 17, 15, -1, -16, -17, -15, 2, -2];

#[rustfmt::skip]
pub const ATTACKS: &'static [u8; 239] = &[
  20, 0, 0, 0, 0, 0, 0, 24,  0, 0, 0, 0, 0, 0,20, 0,
   0,20, 0, 0, 0, 0, 0, 24,  0, 0, 0, 0, 0,20, 0, 0,
   0, 0,20, 0, 0, 0, 0, 24,  0, 0, 0, 0,20, 0, 0, 0,
   0, 0, 0,20, 0, 0, 0, 24,  0, 0, 0,20, 0, 0, 0, 0,
   0, 0, 0, 0,20, 0, 0, 24,  0, 0,20, 0, 0, 0, 0, 0,
   0, 0, 0, 0, 0,20, 2, 24,  2,20, 0, 0, 0, 0, 0, 0,
   0, 0, 0, 0, 0, 2,53, 56, 53, 2, 0, 0, 0, 0, 0, 0,
  24,24,24,24,24,24,56,  0, 56,24,24,24,24,24,24, 0, 
   0, 0, 0, 0, 0, 2,181,56,181, 2, 0, 0, 0, 0, 0, 0, 
   0, 0, 0, 0, 0,20, 2, 24,  2,20, 0, 0, 0, 0, 0, 0,
   0, 0, 0, 0,20, 0, 0, 24,  0, 0,20, 0, 0, 0, 0, 0,
   0, 0, 0,20, 0, 0, 0, 24,  0, 0, 0,20, 0, 0, 0, 0,
   0, 0,20, 0, 0, 0, 0, 24,  0, 0, 0, 0,20, 0, 0, 0,
   0,20, 0, 0, 0, 0, 0, 24,  0, 0, 0, 0, 0,20, 0, 0,
  20, 0, 0, 0, 0, 0, 0, 24,  0, 0, 0, 0, 0, 0,20
];