pub trait ConstructionForager<S, M>: Send + Debugwhere
S: PlanningSolution,
M: Move<S>,{
// Required method
fn select_move_index<D, BestCb, C>(
&self,
placement: &mut Placement<S, M, C>,
_construction_obligation: ConstructionObligation,
step_scope: &mut StepScope<'_, '_, '_, S, D, BestCb>,
) -> Option<ConstructionChoice>
where D: Director<S>,
BestCb: ProgressCallback<S>,
C: MoveCursor<S, M>;
}Expand description
Trait for selecting a move during construction.
Foragers evaluate candidate moves and pick one based on their strategy. Returns either a selected candidate ID or an explicit keep-current choice.
§Type Parameters
S- The planning solution typeM- The move type
Required Methods§
fn select_move_index<D, BestCb, C>( &self, placement: &mut Placement<S, M, C>, _construction_obligation: ConstructionObligation, step_scope: &mut StepScope<'_, '_, '_, S, D, BestCb>, ) -> Option<ConstructionChoice>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".