Struct sudoku_variants::constraint::KingsMoveConstraint [−][src]
A RelativeCellConstraint that excludes duplicates a Chess-Kings’s move away from the reference cell (orthogonally or diagonally adjacent). Note that some checks performed by this constraint are redundant if standard Sudoku rules apply, since orthogonally adjacent cells are either in the same row or column as the reference cell. In that case, using the DiagonallyAdjacentConstraint is more efficient and has the same effect.
Trait Implementations
impl Clone for KingsMoveConstraint
[src]
fn clone(&self) -> KingsMoveConstraint
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl RelativeCellConstraint for KingsMoveConstraint
[src]
const RELATIVE_COORDINATES: &'static [(isize, isize)]
[src]
fn is_forbidden(&self, reference_cell: usize, other_cell: usize) -> bool
[src]
Auto Trait Implementations
impl RefUnwindSafe for KingsMoveConstraint
impl Send for KingsMoveConstraint
impl Sync for KingsMoveConstraint
impl Unpin for KingsMoveConstraint
impl UnwindSafe for KingsMoveConstraint
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<C> CloneConstraint for C where
C: 'static + Constraint + Clone,
[src]
C: 'static + Constraint + Clone,
impl<C> Constraint for C where
C: RelativeCellConstraint,
[src]
C: RelativeCellConstraint,
pub fn check_number(&Self, &SudokuGrid, usize, usize, usize) -> bool
[src]
pub fn get_groups(
&Self,
&SudokuGrid
) -> Vec<Vec<(usize, usize), Global>, Global>
[src]
&Self,
&SudokuGrid
) -> Vec<Vec<(usize, usize), Global>, Global>
fn check(&self, grid: &SudokuGrid) -> bool
[src]
fn check_cell(&self, grid: &SudokuGrid, column: usize, row: usize) -> bool
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,