SolveOptions
Configuration for a single Solver.solve invocation: whether solutions are computed lazily or eagerly, how long resolution may run for, how many solutions to cap at, and any implementation-specific extra knob.
Instances are immutable; the set*/add* methods all return a new SolveOptions rather than mutating the receiver. Build one via the companion's factories -- allLazily, someLazily, allEagerly, someEagerly, their ...WithTimeout variants, or the general of -- or start from DEFAULT and tweak it, e.g. SolveOptions.DEFAULT.setLimit(1).
See also
Properties
Implementation-specific extra options, keyed by name, that a particular Solver strategy may interpret.
The maximum number of solutions to produce, or ALL_SOLUTIONS (i.e. -1) for no cap.
The maximum duration resolution is allowed to run for, before being aborted; defaults to MAX_TIMEOUT.
Functions
Returns a copy of these options with customOptions merged with (and overridden by) options.
Returns a copy of these options with customOptions replaced entirely by options.