Class QuadConstraintBuilderImpl<A,B,C,D,Score_ extends Score<Score_>>
java.lang.Object
ai.timefold.solver.core.impl.score.stream.common.AbstractConstraintBuilder<Score_>
ai.timefold.solver.core.impl.score.stream.common.quad.QuadConstraintBuilderImpl<A,B,C,D,Score_>
- All Implemented Interfaces:
ConstraintBuilder,QuadConstraintBuilder<A,B, C, D, Score_>
public final class QuadConstraintBuilderImpl<A,B,C,D,Score_ extends Score<Score_>>
extends AbstractConstraintBuilder<Score_>
implements QuadConstraintBuilder<A,B,C,D,Score_>
-
Constructor Summary
ConstructorsConstructorDescriptionQuadConstraintBuilderImpl(QuadConstraintConstructor<A, B, C, D, Score_> constraintConstructor, ScoreImpactType impactType, Score_ constraintWeight) -
Method Summary
Modifier and TypeMethodDescriptionprotected QuadFunction<A,B, C, D, Collection<Object>> protected PentaFunction<A,B, C, D, Score_, ConstraintJustification> indictWith(@NonNull QuadFunction<A, B, C, D, Collection<Object>> indictedObjectsMapping) Sets a custom function to mark any object returned by it as responsible for causing the constraint to match.<ConstraintJustification_ extends ConstraintJustification>
@NonNull QuadConstraintBuilder<A,B, C, D, Score_> justifyWith(@NonNull PentaFunction<A, B, C, D, Score_, ConstraintJustification_> justificationMapping) Sets a custom function to apply on a constraint match to justify it.Methods inherited from class ai.timefold.solver.core.impl.score.stream.common.AbstractConstraintBuilder
asConstraint, asConstraintDescribedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ai.timefold.solver.core.api.score.stream.ConstraintBuilder
asConstraint, asConstraint, asConstraintDescribed, asConstraintDescribed
-
Constructor Details
-
QuadConstraintBuilderImpl
public QuadConstraintBuilderImpl(QuadConstraintConstructor<A, B, C, D, Score_> constraintConstructor, ScoreImpactType impactType, Score_ constraintWeight)
-
-
Method Details
-
getJustificationMapping
- Specified by:
getJustificationMappingin classAbstractConstraintBuilder<Score_ extends Score<Score_>>
-
justifyWith
public <ConstraintJustification_ extends ConstraintJustification> @NonNull QuadConstraintBuilder<A,B, justifyWithC, D, Score_> (@NonNull PentaFunction<A, B, C, D, Score_, ConstraintJustification_> justificationMapping) Description copied from interface:QuadConstraintBuilderSets a custom function to apply on a constraint match to justify it.- Specified by:
justifyWithin interfaceQuadConstraintBuilder<A,B, C, D, Score_ extends Score<Score_>> - Returns:
- this
- See Also:
-
getIndictedObjectsMapping
- Specified by:
getIndictedObjectsMappingin classAbstractConstraintBuilder<Score_ extends Score<Score_>>
-
indictWith
public @NonNull QuadConstraintBuilder<A,B, indictWithC, D, Score_> (@NonNull QuadFunction<A, B, C, D, Collection<Object>> indictedObjectsMapping) Description copied from interface:QuadConstraintBuilderSets a custom function to mark any object returned by it as responsible for causing the constraint to match. Each object in the collection returned by this function will become anIndictmentand be available as a key inScoreExplanation.getIndictmentMap().- Specified by:
indictWithin interfaceQuadConstraintBuilder<A,B, C, D, Score_ extends Score<Score_>> - Returns:
- this
-