//! Composable operator combinators.
//!
//! Combinators wrap one or more [`GeneticOperator`](crate::operators::GeneticOperator)s
//! to structure the flow of the algorithm:
//!
//! - [`Pipeline`] — chains operators sequentially
//! - [`Combine`] — runs operators on the same input and merges outputs
//! - [`Weighted`] — probabilistically selects one operator per invocation
//! - [`Repeat`] — applies an operator N times
//! - [`Fill`] — repeats an operator until a target population size is reached
//! - [`Proportional`] — splits output proportionally across multiple operators
//! - [`Conditional`] — applies one of two operators based on a predicate
pub use Combine;
pub use Conditional;
pub use Fill;
pub use Pipeline;
pub use Proportional;
pub use Repeat;
pub use Weighted;