SudokuParseError

Enum SudokuParseError 

Source
pub enum SudokuParseError {
    WrongNumberOfParts,
    WrongNumberOfCells,
    MalformedDimensions,
    InvalidDimensions,
    NumberFormatError,
    InvalidNumber,
}
Expand description

An enumeration of the errors that may occur when parsing a Sudoku or SudokuGrid.

Variants§

§

WrongNumberOfParts

Indicates that the code has the wrong number of parts, which are separated by semicolons. The code should have two parts: dimensions and cells (separated by ‘;’), so if the code does not contain exactly one semicolon, this error will be returned.

§

WrongNumberOfCells

Indicates that the number of cells (which are separated by commas) does not equal the number deduced from the dimensions.

§

MalformedDimensions

Indicates that the dimensions have the wrong format. They should be of the form <block_width>x<block_height>, so if the amount of ’x’s in the dimension string is not exactly one, this error will be raised.

§

InvalidDimensions

Indicates that the provided dimensions are invalid (i.e. at least one is zero).

§

NumberFormatError

Indicates that one of the numbers (dimension or cell content) could not be parsed.

§

InvalidNumber

Indicates that a cell is filled with an invalid number (0 or more than the grid size).

Trait Implementations§

Source§

impl Debug for SudokuParseError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<ParseIntError> for SudokuParseError

Source§

fn from(_: ParseIntError) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for SudokuParseError

Source§

fn eq(&self, other: &SudokuParseError) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for SudokuParseError

Source§

impl StructuralPartialEq for SudokuParseError

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V