Struct shakmaty::square::Square
[−]
[src]
pub struct Square(_);
A square index.
Methods
impl Square
[src]
fn new(index: i8) -> Square
[src]
fn from_index(index: i8) -> Option<Square>
[src]
Tries to create a Square
from an integer index in the range 0..=63
.
unsafe fn from_index_unchecked(index: i8) -> Square
[src]
Creates a Square
from an integer index.
Unsafety
It is the callers responsibility to ensure it is in the range 0..=63
.
fn from_coords(file: i8, rank: i8) -> Option<Square>
[src]
Tries to create a square from zero-based file and rank indexes.
unsafe fn from_coords_unchecked(file: i8, rank: i8) -> Square
[src]
Creates a Square
from zero-based file and rank indexes.
Unsafety
It is the callers responsibility to ensure that file and rank are in
the range 0..=7
.
fn from_bytes(s: &[u8]) -> Result<Square, InvalidSquareName>
[src]
Parses a square name.
Errors
Errors when the input is not a valid square name in lowercase ASCII characters.
Example
use shakmaty::square; let sq = Square::from_bytes(b"a5")?; assert_eq!(sq, square::A5);
fn index(self) -> i8
[src]
fn file(self) -> i8
[src]
fn file_char(self) -> char
[src]
fn rank(self) -> i8
[src]
fn rank_char(self) -> char
[src]
fn offset(self, delta: i8) -> Option<Square>
[src]
fn is_light(self) -> bool
[src]
Tests is the square is a light square.
use shakmaty::square; assert!(square::D1.is_light()); assert!(!square::D8.is_light());
fn is_dark(self) -> bool
[src]
Tests is the square is a dark square.
use shakmaty::square; assert!(square::E1.is_dark()); assert!(!square::E8.is_dark());
fn distance(self, other: Square) -> i8
[src]
The distance between the two squares, i.e. the number of king steps to get from one square to the other.
use shakmaty::square; assert_eq!(square::A2.distance(square::B5), 3);
fn combine(self, rank: Square) -> Square
[src]
Combines two squares, taking the file from the first and the rank from the second.
use shakmaty::square; assert_eq!(square::D3.combine(square::F5), square::D5);
Trait Implementations
impl Copy for Square
[src]
impl Clone for Square
[src]
fn clone(&self) -> Square
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Eq for Square
[src]
impl PartialEq for Square
[src]
fn eq(&self, __arg_0: &Square) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Square) -> bool
[src]
This method tests for !=
.
impl Ord for Square
[src]
fn cmp(&self, __arg_0: &Square) -> Ordering
[src]
This method returns an Ordering
between self
and other
. Read more
fn max(self, other: Self) -> Self
[src]
ord_max_min
)Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
[src]
ord_max_min
)Compares and returns the minimum of two values. Read more
impl PartialOrd for Square
[src]
fn partial_cmp(&self, __arg_0: &Square) -> Option<Ordering>
[src]
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &Square) -> bool
[src]
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &Square) -> bool
[src]
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &Square) -> bool
[src]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &Square) -> bool
[src]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Hash for Square
[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
[src]
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl Sub for Square
[src]
type Output = i8
The resulting type after applying the -
operator.
fn sub(self, Square: Square) -> i8
[src]
Performs the -
operation.
impl FromStr for Square
[src]
type Err = InvalidSquareName
The associated error which can be returned from parsing.
fn from_str(s: &str) -> Result<Square, InvalidSquareName>
[src]
Parses a string s
to return a value of this type. Read more
impl Display for Square
[src]
fn fmt(&self, f: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more