Struct vrp_core::construction::constraints::AreaModule [−][src]
pub struct AreaModule { /* fields omitted */ }Expand description
An area module provides way to restrict given actor to work in specific areas only.
Implementations
impl AreaModule[src]
impl AreaModule[src]pub fn new(
area_resolver: AreaResolver,
location_resolver: LocationResolver,
code: i32
) -> Self[src]
pub fn new(
area_resolver: AreaResolver,
location_resolver: LocationResolver,
code: i32
) -> Self[src]Creates a new instance of AreaModule.
Trait Implementations
impl ConstraintModule for AreaModule[src]
impl ConstraintModule for AreaModule[src]fn accept_insertion(
&self,
_solution_ctx: &mut SolutionContext,
_route_index: usize,
_job: &Job
)[src]
fn accept_insertion(
&self,
_solution_ctx: &mut SolutionContext,
_route_index: usize,
_job: &Job
)[src]Accept insertion of specific job into the route.
Called once job has been inserted into solution represented via solution_ctx.
Target route is defined by route_index which refers to routes collection in solution context.
Inserted job is job.
This method should call accept_route_state internally. Read more
fn accept_route_state(&self, _ctx: &mut RouteContext)[src]
fn accept_route_state(&self, _ctx: &mut RouteContext)[src]Accept route and updates its state to allow more efficient constraint checks.
fn accept_solution_state(&self, _ctx: &mut SolutionContext)[src]
fn accept_solution_state(&self, _ctx: &mut SolutionContext)[src]Accepts insertion solution context allowing to update job insertion data. This method called twice: before insertion of all jobs starts and when it ends. Please note, that it is important to update only stale routes as this allows to avoid updating non changed route states. Read more
fn state_keys(&self) -> Iter<'_, i32>[src]
fn state_keys(&self) -> Iter<'_, i32>[src]Returns unique constraint state keys. Used to avoid state key interference. Read more
fn get_constraints(&self) -> Iter<'_, ConstraintVariant>[src]
fn get_constraints(&self) -> Iter<'_, ConstraintVariant>[src]Returns list of constraints to be used.
Auto Trait Implementations
impl !RefUnwindSafe for AreaModule
impl Send for AreaModule
impl Sync for AreaModule
impl Unpin for AreaModule
impl !UnwindSafe for AreaModule
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> Pointable for T
impl<T> Pointable for Timpl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,