Skip to main content

solverforge_solver/builder/
mod.rs

1/* Builder module for constructing solver components from configuration.
2
3Provides wiring between `SolverConfig` and the actual solver types.
4All builders return concrete monomorphized enums — no `Box<dyn Trait>`.
5*/
6
7pub mod acceptor;
8pub mod context;
9pub mod forager;
10mod list_selector;
11mod scalar_selector;
12pub mod selector;
13
14pub use acceptor::{AcceptorBuilder, AnyAcceptor};
15pub use context::{
16    bind_scalar_groups, ConflictRepair, IntraDistanceAdapter, ListVariableSlot, RepairCandidate,
17    RepairLimits, RuntimeModel, ScalarAssignmentBinding, ScalarCandidate, ScalarEdit,
18    ScalarGroupBinding, ScalarGroupBindingKind, ScalarGroupLimits, ScalarGroupMemberBinding,
19    ScalarVariableSlot, ValueSource, VariableSlot,
20};
21pub use forager::{AnyForager, ForagerBuilder};
22pub use selector::{
23    build_local_search, build_move_selector, build_vnd, LocalSearch, Neighborhood,
24    NeighborhoodLeaf, NeighborhoodMove, Selector, Vnd,
25};