pub struct Minion { /* private fields */ }
Expand description
A SolverAdaptor for interacting with Minion.
This adaptor uses the minion_rs
crate to talk to Minion over FFI.
Implementations§
Trait Implementations§
Source§impl SolverAdaptor for Minion
impl SolverAdaptor for Minion
Source§fn solve(
&mut self,
callback: Box<dyn Fn(HashMap<Name, Literal>) -> bool + Send>,
_: Internal,
) -> Result<SolveSuccess, SolverError>
fn solve( &mut self, callback: Box<dyn Fn(HashMap<Name, Literal>) -> bool + Send>, _: Internal, ) -> Result<SolveSuccess, SolverError>
Runs the solver on the given model. Read more
Source§fn solve_mut(
&mut self,
callback: Box<dyn Fn(HashMap<Name, Literal>, Box<dyn ModelModifier>) -> bool + Send>,
_: Internal,
) -> Result<SolveSuccess, SolverError>
fn solve_mut( &mut self, callback: Box<dyn Fn(HashMap<Name, Literal>, Box<dyn ModelModifier>) -> bool + Send>, _: Internal, ) -> Result<SolveSuccess, SolverError>
Runs the solver on the given model, allowing modification of the model through a
ModelModifier
. Read morefn load_model(&mut self, model: Model, _: Internal) -> Result<(), SolverError>
Source§fn get_family(&self) -> SolverFamily
fn get_family(&self) -> SolverFamily
Get the solver family that this solver adaptor belongs to
fn init_solver(&mut self, _: Internal)
Source§fn add_adaptor_info_to_stats(&self, stats: SolverStats) -> SolverStats
fn add_adaptor_info_to_stats(&self, stats: SolverStats) -> SolverStats
Adds the solver adaptor name and family (if they exist) to the given stats object.
Auto Trait Implementations§
impl Freeze for Minion
impl RefUnwindSafe for Minion
impl Send for Minion
impl Sync for Minion
impl Unpin for Minion
impl UnwindSafe for Minion
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more