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: SolverCallback,
_: Internal,
) -> Result<SolveSuccess, SolverError>
fn solve( &mut self, callback: SolverCallback, _: Internal, ) -> Result<SolveSuccess, SolverError>
Runs the solver on the given model. Read more
Source§fn solve_mut(
&mut self,
callback: SolverMutCallback,
_: Internal,
) -> Result<SolveSuccess, SolverError>
fn solve_mut( &mut self, callback: SolverMutCallback, _: 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: ConjureModel, _: Internal, ) -> Result<(), SolverError>
Source§fn get_family(&self) -> SolverFamily
fn get_family(&self) -> SolverFamily
Get the solver family that this solver adaptor belongs to
Source§fn write_solver_input_file(&self, writer: &mut impl Write) -> Result<(), Error>
fn write_solver_input_file(&self, writer: &mut impl Write) -> Result<(), Error>
Writes a solver input file to the given writer. Read more
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§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 120 bytes