pub struct Highs;Expand description
HiGHS solver handle.
Solver::solve builds a fresh HiGHS instance for each call, so models can be
re-used or shared freely. For repeated solves of one model (parameter sweeps,
sensitivity studies, rolling horizons), build a resident handle with
Highs::persistent.
Trait Implementations§
impl Copy for Highs
Source§impl PersistentSolver for Highs
impl PersistentSolver for Highs
Source§type Handle = HighsPersistent
type Handle = HighsPersistent
The stateful, resident handle. Solving the same (or a structurally identical)
model on it repeatedly reuses the build.
Source§fn persistent(&self) -> HighsPersistent
fn persistent(&self) -> HighsPersistent
Create a fresh resident handle with no model loaded yet.
The first
solve builds it.Source§impl Solver for Highs
impl Solver for Highs
Source§type Options = HighsOptions
type Options = HighsOptions
Backend-specific options struct. Use
() for solvers without any
tunables.fn name(&self) -> &str
fn supports(&self, kind: ModelKind) -> bool
Source§fn solve(
&mut self,
model: &Model,
opts: &HighsOptions,
) -> Result<SolverResult, SolverError>
fn solve( &mut self, model: &Model, opts: &HighsOptions, ) -> Result<SolverResult, SolverError>
Solves the given
Model using this solver. Read moreAuto Trait Implementations§
impl Freeze for Highs
impl RefUnwindSafe for Highs
impl Send for Highs
impl Sync for Highs
impl Unpin for Highs
impl UnsafeUnpin for Highs
impl UnwindSafe for Highs
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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