solverforge-solver 0.17.1

Solver engine for SolverForge
Documentation
/* Heuristic components for solving

This module contains:
- Moves: Operations that modify planning variables
- Selectors: Components that enumerate entities, values, and moves
*/

pub mod r#move;
pub mod selector;

// Re-export move types
pub use r#move::k_opt_reconnection;
pub use r#move::{
    ChangeMove, CompositeMove, CompoundScalarEdit, CompoundScalarMove, CutPoint,
    DynamicListChangeMove, DynamicScalarChangeMove, KOptMove, ListChangeMove, ListMoveUnion,
    ListMultiSwapMove, ListPermuteMove, ListReverseMove, ListRuinMove, ListSwapMove, Move,
    MoveArena, PillarChangeMove, PillarSwapMove, RuinMove, RuinRecreateMove, ScalarMoveUnion,
    ScalarRecreateValueSource, SublistChangeMove, SublistSwapMove, SwapMove,
};

// Re-export selector types
pub use selector::decorator::VecUnionSelector;
pub use selector::{
    AllEntitiesSelector, ChangeMoveSelector, CrossEntityDistanceMeter,
    DefaultCrossEntityDistanceMeter, DefaultDistanceMeter, DefaultPillarSelector,
    DynamicListChangeMoveSelector, DynamicScalarChangeMoveSelector, EntityReference,
    EntitySelector, FromSolutionEntitySelector, FromSolutionValueSelector, KOptConfig,
    KOptMoveSelector, ListChangeMoveSelector, ListPermuteMoveSelector, ListPositionDistanceMeter,
    ListPrecedenceMoveSelector, ListReverseMoveSelector, ListRuinMoveSelector,
    ListSwapMoveSelector, MimicRecorder, MimicRecordingEntitySelector,
    MimicReplayingEntitySelector, MoveSelector, NearbyDistanceMeter, NearbyEntitySelector,
    NearbyKOptMoveSelector, NearbyListChangeMoveSelector, NearbyListSwapMoveSelector,
    NearbySelectionConfig, PerEntitySliceValueSelector, PerEntityValueSelector, Pillar,
    PillarSelector, RuinMoveSelector, RuinVariableAccess, ScalarChangeMoveSelector,
    ScalarSwapMoveSelector, SelectionOrder, StaticValueSelector, SubPillarConfig,
    SublistChangeMoveSelector, SublistSwapMoveSelector, SwapMoveSelector, ValueSelector,
};