diff --git a/src/board.rs b/src/board.rs index 8367fe2..8e12050 100644 --- a/src/board.rs +++ b/src/board.rs @@ -127,27 +127,27 @@ impl File { } #[inline] - pub fn from_char(c: char) -> Option { - Self::from_ascii(c as u8) + pub fn from_char(file: char) -> Option { + Self::from_ascii(file as u8) } #[inline] - pub(crate) fn to_ascii(self) -> u8 { + pub fn to_ascii(self) -> u8 { self as u8 + b'a' } #[inline] - pub(crate) fn from_ascii(c: u8) -> Option { - (c <= b'h') + pub fn from_ascii(file: u8) -> Option { + (file <= b'h') .then(|| { - c.checked_sub(b'a') + file.checked_sub(b'a') .map(|i| unsafe { Self::new_unchecked(i) }) }) .flatten() } #[inline] - pub(crate) fn bitboard(self) -> Bitboard { + pub fn bitboard(self) -> Bitboard { Bitboard(0x0101010101010101 << (self as u8)) } } @@ -207,8 +207,23 @@ impl Rank { } #[inline] - pub fn from_char(c: char) -> Option { - Self::from_ascii(c as u8) + pub fn from_char(rank: char) -> Option { + Self::from_ascii(rank as u8) + } + + #[inline] + pub fn to_ascii(self) -> u8 { + self as u8 + b'1' + } + + #[inline] + pub fn from_ascii(rank: u8) -> Option { + (rank <= b'8') + .then(|| { + rank.checked_sub(b'1') + .map(|i| unsafe { Self::new_unchecked(i) }) + }) + .flatten() } #[inline] @@ -217,22 +232,7 @@ impl Rank { } #[inline] - pub(crate) fn to_ascii(self) -> u8 { - self as u8 + b'1' - } - - #[inline] - pub(crate) fn from_ascii(c: u8) -> Option { - (c <= b'8') - .then(|| { - c.checked_sub(b'1') - .map(|i| unsafe { Self::new_unchecked(i) }) - }) - .flatten() - } - - #[inline] - pub(crate) fn bitboard(self) -> Bitboard { + pub fn bitboard(self) -> Bitboard { Bitboard(0xFF << ((self as u8) << 3)) } }