Skip to main content

MoveCursor

Trait MoveCursor 

Source
pub trait MoveCursor<S: PlanningSolution, M: Move<S>> {
    // Required methods
    fn next_candidate(&mut self) -> Option<(usize, MoveCandidateRef<'_, S, M>)>;
    fn candidate(&self, index: usize) -> Option<MoveCandidateRef<'_, S, M>>;
    fn take_candidate(&mut self, index: usize) -> M;
}

Required Methods§

Source

fn next_candidate(&mut self) -> Option<(usize, MoveCandidateRef<'_, S, M>)>

Source

fn candidate(&self, index: usize) -> Option<MoveCandidateRef<'_, S, M>>

Source

fn take_candidate(&mut self, index: usize) -> M

Implementors§

Source§

impl<S, M> MoveCursor<S, M> for ArenaMoveCursor<S, M>
where S: PlanningSolution, M: Move<S>,

Source§

impl<S, V> MoveCursor<S, NeighborhoodMove<S, V>> for CartesianChildCursor<S, V>
where S: PlanningSolution + 'static, V: Clone + PartialEq + Send + Sync + Debug + 'static,

Source§

impl<S, V> MoveCursor<S, NeighborhoodMove<S, V>> for NeighborhoodCursor<S, V>
where S: PlanningSolution + 'static, V: Clone + PartialEq + Send + Sync + Debug + 'static,