Summary
Constrains six cells to values that satisfy a lambda expression.
Remarks
This constraint is not very efficient as it will only be evaluated once all but one of the cells is filled in.
Constructors
SixCellLambdaConstraint(int affectedCell1, int affectedCell2, int affectedCell3, int affectedCell4, int affectedCell5, int affectedCell6, Func<int, int, int, int, int, int, bool> isValid) | Constructor. |
Instance methods
Static methods
int | |
Converts a convenient coordinate notation into a puzzle-grid index. |
IEnumerable<int> | |
Converts a convenient coordinate notation into puzzle-grid indices. |
Instance properties
int[] | | The group of cells affected by this constraint, or null if it affects all of them. |
bool | |
By default, a constraint is only evaluated once for every digit placed in the grid, but not when another
constraint merely rules out a possibility. Derived types can override this and return true to indicate
to the solver that the constraint should be reevaluated (meaning: have Constraint.Process(SolverState) called on it
again) when another constraint rules out a value in one of the affected cells of this constraint. |
Func<int, int, int, int, int, int, bool> | | A function that determines whether a set of values is valid in the relevant cells. |
int? | |
Indicates an approximate number of possible combinations of digits this constraint can still accommodate. This
will help the solver prioritize cells when multiple cells have the same number of combinations individually. |