Summary
Use this to instruct the puzzle solver (
Puzzle.Solve(SolverInstructions)) to perform certain types
of analysis for the debugging of constraint implementations.
Constructors
Instance fields
| string | |
If not null, the solver outputs extremely verbose information to this file describing the solving
process. |
| CellOrderStrategy | | Determines the order in which cells are considered during trial and error. |
| int[] | |
Specifies a priority list of cells to consider during trial and error. Depending on the value of SolverInstructions.CellOrderStrategy, this may not be strictly adhered to. |
| Func<Constraint, bool> | |
When this and SolverInstructions.IntendedSolution are not null, limits the set of constraints to examine.
This may be necessary for speed reasons. |
| int[] | |
When this is not null, the solver determines at which point during the solve process one of the
constraints eliminates the intended solution. This is for debugging constraints that rule out solutions when
they shouldn’t. |
| object | |
If not null, the solver will obtain a lock on this object while outputting information to the (SolverInstructions.BulkLoggingFile). |
| IProgressVisualizer | |
Displays progress during the puzzle solve process. ProgressVisualizer is provided
as a default implementation. |
| Random | |
Uses a specific RNG to randomize the solver. When “solving” a puzzle with multiple solutions, this allows the
solver to pick one at random. |
| int? | |
Specifies a cell value to prioritize when filling the grid. This has no effect if SolverInstructions.Randomizer is
specified. |