#![allow(clippy::type_complexity)]
pub mod api;
pub mod constraint;
pub mod director;
pub mod stream;
pub use constraint::{
GroupedUniConstraint, IncrementalBiConstraint, IncrementalCrossBiConstraint,
IncrementalPentaConstraint, IncrementalQuadConstraint, IncrementalTriConstraint,
IncrementalUniConstraint, ProjectedGroupedConstraint, ProjectedUniConstraint,
};
pub use api::constraint_set::{
ConstraintMetadata, ConstraintResult, ConstraintSet, IncrementalConstraint,
};
pub use api::weight_overrides::{ConstraintWeightOverrides, WeightProvider};
pub use director::score_director::ScoreDirector;
pub use director::{Director, DirectorScoreState, SolvableSolution};
pub use api::analysis::{
ConstraintAnalysis, ConstraintJustification, DetailedConstraintEvaluation,
DetailedConstraintMatch, EntityRef, Indictment, IndictmentMap, ScoreExplanation,
};
pub use stream::{
fixed_weight, hard_weight, BiConstraintBuilder, BiConstraintStream, ConstraintFactory,
FixedWeight, GroupedConstraintBuilder, GroupedConstraintStream, HardWeight,
ProjectedBiConstraintBuilder, ProjectedBiConstraintStream, ProjectedConstraintBuilder,
ProjectedConstraintStream, ProjectedGroupedConstraintBuilder, ProjectedGroupedConstraintStream,
Projection, ProjectionSink, UniConstraintBuilder, UniConstraintStream,
};