Enum chess_turn_engine::GameError
source · [−]pub enum GameError {
Show 16 variants
MovingPieceNotFound,
KingIsSafe,
KingIsInCheck,
KingIsInCheckmate,
KingCannotCastleSafetly,
OurKingMustBeSafe,
CaptureNotSet,
CaptureAlly,
NoCapturePiece,
GameOver(Gamestate),
CastlingUnderCheck,
CastlingUnavailable,
CastlingSquaresNotEmpty,
InvalidPawnMovement,
ParsingTurnFailed,
UndoNotAvailable,
}Expand description
Error codes
Variants
MovingPieceNotFound
Origin square not found for moving piece
KingIsSafe
Unexpected king state for the turn
KingIsInCheck
Unexpected king state for the turn
KingIsInCheckmate
Unexpected king state for the turn
KingCannotCastleSafetly
King movement during castling must not be under check
OurKingMustBeSafe
Upon executing the turn, king must remain safe
CaptureNotSet
Turn missing info about the capture
CaptureAlly
Capture of an ally piece is not allowed
NoCapturePiece
Capture expected, but capture piece missing on the board on the destination square
GameOver(Gamestate)
Game over
CastlingUnderCheck
King can castle if it is not under check
CastlingUnavailable
Castling not possible
- Maybe king/rook has moved already and doing so made castling unavailable
CastlingSquaresNotEmpty
Squares between a rook and a king must be empty in order to perform castling turn
InvalidPawnMovement
Pawn moves:
- diagonally only by capture action
- straight in case of no capture action
ParsingTurnFailed
Turn notation is not correct
UndoNotAvailable
Undo unavailable
Trait Implementations
sourceimpl Error for GameError
impl Error for GameError
1.30.0 · sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
sourcefn backtrace(&self) -> Option<&Backtrace>
fn backtrace(&self) -> Option<&Backtrace>
backtrace)Returns a stack backtrace, if available, of where this error occurred. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
impl StructuralPartialEq for GameError
Auto Trait Implementations
impl RefUnwindSafe for GameError
impl Send for GameError
impl Sync for GameError
impl Unpin for GameError
impl UnwindSafe for GameError
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more