Skip to main content

Search

Trait Search 

Source
pub trait Search<S, V = usize, DM = DefaultCrossEntityDistanceMeter, IDM = DefaultCrossEntityDistanceMeter>
where S: PlanningSolution + 'static, S::Score: Score + ParseableScore, V: Clone + Copy + PartialEq + Eq + Hash + Into<usize> + Send + Sync + Debug + 'static, DM: CrossEntityDistanceMeter<S> + Clone + Debug + Send + 'static, IDM: CrossEntityDistanceMeter<S> + Clone + Debug + Send + 'static,
{ type Phase<D, ProgressCb>: Phase<S, D, ProgressCb> + Debug + Send where D: Director<S>, ProgressCb: ProgressCallback<S>; // Required method fn build<D, ProgressCb>( self, config: &SolverConfig, ) -> PhaseSequence<Self::Phase<D, ProgressCb>> where D: Director<S>, ProgressCb: ProgressCallback<S>; }

Required Associated Types§

Source

type Phase<D, ProgressCb>: Phase<S, D, ProgressCb> + Debug + Send where D: Director<S>, ProgressCb: ProgressCallback<S>

Required Methods§

Source

fn build<D, ProgressCb>( self, config: &SolverConfig, ) -> PhaseSequence<Self::Phase<D, ProgressCb>>
where D: Director<S>, ProgressCb: ProgressCallback<S>,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<S, V, DM, IDM, CustomPhases> Search<S, V, DM, IDM> for SearchBuilder<S, V, DM, IDM, CustomPhases>
where S: PlanningSolution + 'static, S::Score: Score + ParseableScore, V: Clone + Copy + PartialEq + Eq + Hash + Into<usize> + Send + Sync + Debug + 'static, DM: CrossEntityDistanceMeter<S> + Clone + Debug + Send + 'static, IDM: CrossEntityDistanceMeter<S> + Clone + Debug + Send + 'static, CustomPhases: CustomPhaseRegistry<S, V, DM, IDM>,

Source§

type Phase<D, ProgressCb> = SearchRuntimePhase<RuntimePhase<Construction<S, V, DM, IDM>, LocalSearchStrategy<S, V, DM, IDM>>, <CustomPhases as CustomPhaseRegistry<S, V, DM, IDM>>::Phase> where D: Director<S>, ProgressCb: ProgressCallback<S>