pub trait Solve: KernelFunctions {
// Required methods
fn solve(&mut self, limits: Limits) -> MaybeTerminatedError;
fn all_stats(
&self,
) -> (Stats, Option<SolverStats>, Option<Vec<EncodingStats>>);
}
Expand description
Solving interface for each algorithm
Required Methods§
Sourcefn solve(&mut self, limits: Limits) -> MaybeTerminatedError
fn solve(&mut self, limits: Limits) -> MaybeTerminatedError
Solves the instance under given limits. If not fully solved, returns an early termination reason.
Sourcefn all_stats(&self) -> (Stats, Option<SolverStats>, Option<Vec<EncodingStats>>)
fn all_stats(&self) -> (Stats, Option<SolverStats>, Option<Vec<EncodingStats>>)
Gets all statistics from the solver
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.