pub struct NeighbourRemoval { /* private fields */ }Expand description
A ruin strategy which removes jobs in neighbourhood of randomly selected job (inclusive).
Implementations§
Source§impl NeighbourRemoval
impl NeighbourRemoval
Sourcepub fn new(limits: RemovalLimits) -> Self
pub fn new(limits: RemovalLimits) -> Self
Creates a new instance of NeighbourRemoval.
Trait Implementations§
Source§impl Ruin for NeighbourRemoval
impl Ruin for NeighbourRemoval
Source§fn run(
&self,
_: &RefinementContext,
insertion_ctx: InsertionContext,
) -> InsertionContext
fn run( &self, _: &RefinementContext, insertion_ctx: InsertionContext, ) -> InsertionContext
Ruins given solution and returns a new one with less jobs assigned.
Auto Trait Implementations§
impl Freeze for NeighbourRemoval
impl RefUnwindSafe for NeighbourRemoval
impl Send for NeighbourRemoval
impl Sync for NeighbourRemoval
impl Unpin for NeighbourRemoval
impl UnsafeUnpin for NeighbourRemoval
impl UnwindSafe for NeighbourRemoval
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> 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