Struct vrp_core::construction::constraints::ConcreteJobContextTransition [−][src]
A concrete implementation of JobContextTransition
which allows to use lambdas.
Fields
remove_required: FRemoveRequired
A function which removes job from required list.
promote_required: FPromoteRequired
A function which promotes job to required jobs.
remove_locked: FRemoveLocked
A function which removes job from locked list.
promote_locked: FPromoteLocked
A function which promotes job to locked jobs.
Trait Implementations
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> JobContextTransition for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FRemoveRequired: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FPromoteRequired: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FRemoveLocked: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FPromoteLocked: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
[src]
FRemoveRequired: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FPromoteRequired: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FRemoveLocked: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
FPromoteLocked: Fn(&SolutionContext, Option<usize>, &Job) -> bool,
fn remove_from_required(
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
[src]
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
fn promote_to_required(
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
[src]
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
fn remove_from_locked(
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
[src]
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
fn promote_to_locked(
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
[src]
&self,
solution_ctx: &SolutionContext,
route_index: Option<usize>,
job: &Job
) -> bool
Auto Trait Implementations
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> RefUnwindSafe for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FPromoteLocked: RefUnwindSafe,
FPromoteRequired: RefUnwindSafe,
FRemoveLocked: RefUnwindSafe,
FRemoveRequired: RefUnwindSafe,
FPromoteLocked: RefUnwindSafe,
FPromoteRequired: RefUnwindSafe,
FRemoveLocked: RefUnwindSafe,
FRemoveRequired: RefUnwindSafe,
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> Send for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FPromoteLocked: Send,
FPromoteRequired: Send,
FRemoveLocked: Send,
FRemoveRequired: Send,
FPromoteLocked: Send,
FPromoteRequired: Send,
FRemoveLocked: Send,
FRemoveRequired: Send,
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> Sync for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FPromoteLocked: Sync,
FPromoteRequired: Sync,
FRemoveLocked: Sync,
FRemoveRequired: Sync,
FPromoteLocked: Sync,
FPromoteRequired: Sync,
FRemoveLocked: Sync,
FRemoveRequired: Sync,
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> Unpin for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FPromoteLocked: Unpin,
FPromoteRequired: Unpin,
FRemoveLocked: Unpin,
FRemoveRequired: Unpin,
FPromoteLocked: Unpin,
FPromoteRequired: Unpin,
FRemoveLocked: Unpin,
FRemoveRequired: Unpin,
impl<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> UnwindSafe for ConcreteJobContextTransition<FRemoveRequired, FPromoteRequired, FRemoveLocked, FPromoteLocked> where
FPromoteLocked: UnwindSafe,
FPromoteRequired: UnwindSafe,
FRemoveLocked: UnwindSafe,
FRemoveRequired: UnwindSafe,
FPromoteLocked: UnwindSafe,
FPromoteRequired: UnwindSafe,
FRemoveLocked: UnwindSafe,
FRemoveRequired: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,