Skip navigation links
  • Overview
  • Package
  • Class
  • Use
  • Tree
  • Deprecated
  • Index
  • Help

Deprecated API

Contents

  • Terminally Deprecated
  • Interfaces
  • Classes
  • Annotation Interfaces
  • Fields
  • Methods
  • Constructors
  • Enum Constants
  • Annotation Interface Elements
  • Terminally Deprecated Elements
    Element
    Description
    ai.timefold.solver.core.api.domain.solution.PlanningScore.NullScoreDefinition
    ai.timefold.solver.core.api.domain.solution.PlanningScore.scoreDefinitionClass()
    Support for custom scores is deprecated and will be removed in Timefold 9.0.
    ai.timefold.solver.core.api.domain.valuerange.ValueRangeFactory.createDoubleValueRange(double, double)
    Prefer ValueRangeFactory.createBigDecimalValueRange(BigDecimal, BigDecimal).
    ai.timefold.solver.core.api.domain.variable.CustomShadowVariable
    Deprecated in favor of ShadowVariable (normal shadow variable with CustomShadowVariable.variableListenerClass()) and PiggybackShadowVariable (if CustomShadowVariable.variableListenerRef() is used).
    ai.timefold.solver.core.api.score.AbstractBendableScore
    Implement IBendableScore instead.
    ai.timefold.solver.core.api.score.AbstractScore
    Implement Score instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardOrSoftScore(int)
    Use BendableScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardScore(int)
    Use BendableScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardScores()
    Use BendableScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getSoftScore(int)
    Use BendableScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getSoftScores()
    Use BendableScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardOrSoftScore(int)
    Use BendableBigDecimalScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardScore(int)
    Use BendableBigDecimalScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardScores()
    Use BendableBigDecimalScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getSoftScore(int)
    Use BendableBigDecimalScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getSoftScores()
    Use BendableBigDecimalScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardOrSoftScore(int)
    Use BendableLongScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardScore(int)
    Use BendableLongScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardScores()
    Use BendableLongScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getSoftScore(int)
    Use BendableLongScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getSoftScores()
    Use BendableLongScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getHardScore()
    Use HardMediumSoftScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getMediumScore()
    Use HardMediumSoftScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getSoftScore()
    Use HardMediumSoftScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getHardScore()
    Use HardMediumSoftBigDecimalScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getMediumScore()
    Use HardMediumSoftBigDecimalScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getSoftScore()
    Use HardMediumSoftBigDecimalScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getHardScore()
    Use HardMediumSoftLongScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getMediumScore()
    Use HardMediumSoftLongScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getSoftScore()
    Use HardMediumSoftLongScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoft.HardSoftScore.getHardScore()
    Use HardSoftScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoft.HardSoftScore.getSoftScore()
    Use HardSoftScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScore.getHardScore()
    Use HardSoftBigDecimalScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScore.getSoftScore()
    Use HardSoftBigDecimalScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftlong.HardSoftLongScore.getHardScore()
    Use HardSoftLongScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftlong.HardSoftLongScore.getSoftScore()
    Use HardSoftLongScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.simple.SimpleScore.getScore()
    Use SimpleScore.score() instead.
    ai.timefold.solver.core.api.score.buildin.simplebigdecimal.SimpleBigDecimalScore.getScore()
    Use SimpleBigDecimalScore.score() instead.
    ai.timefold.solver.core.api.score.buildin.simplelong.SimpleLongScore.getScore()
    Use SimpleLongScore.score() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(Constraint, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, String, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, List<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintId()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintName()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintPackage()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getJustificationList()
    Prefer ConstraintMatch.getJustification() or ConstraintMatch.getIndictedObjectList().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.composeConstraintId(String, String)
    Prefer ConstraintRef.of(String, String).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintId()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintName()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintPackage()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.Indictment.getJustification()
    Prefer Indictment.getIndictedObject().
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterEntityAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterEntityRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemFactAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemFactRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemPropertyChanged(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeEntityAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeEntityRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemFactAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemFactRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemPropertyChanged(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.IBendableScore.getHardLevelsSize()
    Use IBendableScore.hardLevelsSize() instead.
    ai.timefold.solver.core.api.score.IBendableScore.getLevelsSize()
    Use IBendableScore.levelsSize() instead.
    ai.timefold.solver.core.api.score.IBendableScore.getSoftLevelsSize()
    Use IBendableScore.softLevelsSize() instead.
    ai.timefold.solver.core.api.score.Score.getInitScore()
    Use Score.initScore() instead.
    ai.timefold.solver.core.api.score.ScoreManager
    Use SolutionManager instead.
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impact(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impact(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impact(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impact(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurable(String, String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalize(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalize(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalize(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalize(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurable(String, String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.reward(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.reward(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.reward(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.reward(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintFactory()
    for removal as it is not necessary on the public API.
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintId()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintName()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintPackage()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(QuadFunction<A, B, C, D, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(QuadFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(TriFunction<A, B, C, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(TriFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(Comparator<? super A>)
    Deprecated in favor of ConstraintCollectors.max(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(BiFunction<A, B, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(BiFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(Function<A, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(QuadFunction<A, B, C, D, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(QuadFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(TriFunction<A, B, C, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(TriFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(Comparator<? super A>)
    Deprecated in favor of ConstraintCollectors.min(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(BiFunction<A, B, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(BiFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(Function<A, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.from(Class<A>)
    This method is deprecated in favor of ConstraintFactory.forEach(Class), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUnfiltered(Class<A>)
    Prefer ConstraintFactory.forEachIncludingNullVars(Class).
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>)
    Prefer ConstraintFactory.forEachUniquePair(Class), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>...)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner...), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.impact(String, Score<?>)
    Prefer UniConstraintStream.impact(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.impact(String, String, Score<?>)
    Prefer UniConstraintStream.impact(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalize(String, Score<?>)
    Prefer UniConstraintStream.penalize(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalize(String, String, Score<?>)
    Prefer UniConstraintStream.penalize(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalizeConfigurable(String)
    Prefer UniConstraintStream.penalizeConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalizeConfigurable(String, String)
    Prefer UniConstraintStream.penalizeConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.reward(String, Score<?>)
    Prefer UniConstraintStream.reward(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.reward(String, String, Score<?>)
    Prefer UniConstraintStream.reward(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.rewardConfigurable(String)
    Prefer UniConstraintStream.rewardConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.rewardConfigurable(String, String)
    Prefer UniConstraintStream.rewardConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStreamImplType.DROOLS
    in favor of ConstraintStreamImplType.BAVET.
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impact(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impact(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impact(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impact(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalize(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalize(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalize(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalize(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.reward(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.reward(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.reward(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.reward(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impact(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impact(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impact(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impact(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalize(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalize(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalize(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalize(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.reward(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.reward(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.reward(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.reward(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impact(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.impact(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impact(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.impact(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.impactConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.impactConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.impactConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.impactConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.impactLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.impactLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalize(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.penalize(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalize(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.penalize(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.reward(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.reward(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.reward(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.reward(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.rewardConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.rewardConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.solver.event.BestSolutionChangedEvent.isEveryProblemFactChangeProcessed()
    Prefer BestSolutionChangedEvent.isEveryProblemChangeProcessed().
    ai.timefold.solver.core.api.solver.ProblemFactChange
    Prefer ProblemChange.
    ai.timefold.solver.core.api.solver.Solver.addProblemFactChange(ProblemFactChange<Solution_>)
    Prefer Solver.addProblemChange(ProblemChange).
    ai.timefold.solver.core.api.solver.Solver.addProblemFactChanges(List<ProblemFactChange<Solution_>>)
    Prefer Solver.addProblemChanges(List).
    ai.timefold.solver.core.api.solver.Solver.isEveryProblemFactChangeProcessed()
    Prefer Solver.isEveryProblemChangeProcessed().
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Solution_, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.getMaximumSubListSize()
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.getMinimumSubListSize()
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.maximumSubListSize
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.minimumSubListSize
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.setMaximumSubListSize(Integer)
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMaximumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.setMinimumSubListSize(Integer)
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMinimumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.getMaximumSubListSize()
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.getMinimumSubListSize()
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.maximumSubListSize
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.minimumSubListSize
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.setMaximumSubListSize(Integer)
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMaximumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.setMinimumSubListSize(Integer)
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMinimumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.getFadingValueTabuRatio()
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.getValueTabuRatio()
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.setFadingValueTabuRatio(Double)
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.setValueTabuRatio(Double)
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.score.definition.ScoreDefinitionType.HARD_SOFT_DOUBLE
    ai.timefold.solver.core.config.score.definition.ScoreDefinitionType.SIMPLE_DOUBLE
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.getScoreDrlList()
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.scoreDrlList
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.setScoreDrlList(List<String>)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.withScoreDrlList(List<String>)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.withScoreDrls(String...)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.getTerminationClass()
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.setTerminationClass(Class<? extends Termination>)
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.withTerminationClass(Class<? extends Termination>)
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.impl.domain.entity.descriptor.EntityDescriptor.getIsInitializedPredicate()
    Prefer EntityDescriptor.getHasNoNullVariables().
    ai.timefold.solver.core.impl.domain.valuerange.AbstractUncountableValueRange
    Uncountable value ranges were never fully supported in many places throughout the solver and therefore never gained traction. Use CountableValueRange instead, and configure a step.
    ai.timefold.solver.core.impl.domain.valuerange.buildin.primdouble.DoubleValueRange
    Prefer BigDecimalValueRange.
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(ConstraintRef)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(Constraint, Score_)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(String, String)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(String, String, Score_)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.DefaultScoreManager
    Use DefaultSolutionManager instead.
  • Deprecated Interfaces
    Interface
    Description
    ai.timefold.solver.core.api.domain.solution.PlanningScore.NullScoreDefinition
    ai.timefold.solver.core.api.score.ScoreManager
    Use SolutionManager instead.
    ai.timefold.solver.core.api.solver.ProblemFactChange
    Prefer ProblemChange.
  • Deprecated Classes
    Class
    Description
    ai.timefold.solver.core.api.score.AbstractBendableScore
    Implement IBendableScore instead.
    ai.timefold.solver.core.api.score.AbstractScore
    Implement Score instead.
    ai.timefold.solver.core.impl.domain.valuerange.AbstractUncountableValueRange
    Uncountable value ranges were never fully supported in many places throughout the solver and therefore never gained traction. Use CountableValueRange instead, and configure a step.
    ai.timefold.solver.core.impl.domain.valuerange.buildin.primdouble.DoubleValueRange
    Prefer BigDecimalValueRange.
    ai.timefold.solver.core.impl.score.DefaultScoreManager
    Use DefaultSolutionManager instead.
  • Deprecated Annotation Interfaces
    Annotation Interface
    Description
    ai.timefold.solver.core.api.domain.variable.CustomShadowVariable
    Deprecated in favor of ShadowVariable (normal shadow variable with CustomShadowVariable.variableListenerClass()) and PiggybackShadowVariable (if CustomShadowVariable.variableListenerRef() is used).
  • Deprecated Fields
    Field
    Description
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.maximumSubListSize
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.minimumSubListSize
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.maximumSubListSize
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.minimumSubListSize
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.scoreDrlList
  • Deprecated Methods
    Method
    Description
    ai.timefold.solver.core.api.domain.solution.PlanningScore.scoreDefinitionClass()
    Support for custom scores is deprecated and will be removed in Timefold 9.0.
    ai.timefold.solver.core.api.domain.valuerange.ValueRangeFactory.createDoubleValueRange(double, double)
    Prefer ValueRangeFactory.createBigDecimalValueRange(BigDecimal, BigDecimal).
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardOrSoftScore(int)
    Use BendableScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardScore(int)
    Use BendableScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getHardScores()
    Use BendableScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getSoftScore(int)
    Use BendableScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendable.BendableScore.getSoftScores()
    Use BendableScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardOrSoftScore(int)
    Use BendableBigDecimalScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardScore(int)
    Use BendableBigDecimalScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getHardScores()
    Use BendableBigDecimalScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getSoftScore(int)
    Use BendableBigDecimalScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore.getSoftScores()
    Use BendableBigDecimalScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardOrSoftScore(int)
    Use BendableLongScore.hardOrSoftScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardScore(int)
    Use BendableLongScore.hardScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getHardScores()
    Use BendableLongScore.hardScores() instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getSoftScore(int)
    Use BendableLongScore.softScore(int) instead.
    ai.timefold.solver.core.api.score.buildin.bendablelong.BendableLongScore.getSoftScores()
    Use BendableLongScore.softScores() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getHardScore()
    Use HardMediumSoftScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getMediumScore()
    Use HardMediumSoftScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoft.HardMediumSoftScore.getSoftScore()
    Use HardMediumSoftScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getHardScore()
    Use HardMediumSoftBigDecimalScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getMediumScore()
    Use HardMediumSoftBigDecimalScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftbigdecimal.HardMediumSoftBigDecimalScore.getSoftScore()
    Use HardMediumSoftBigDecimalScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getHardScore()
    Use HardMediumSoftLongScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getMediumScore()
    Use HardMediumSoftLongScore.mediumScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardmediumsoftlong.HardMediumSoftLongScore.getSoftScore()
    Use HardMediumSoftLongScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoft.HardSoftScore.getHardScore()
    Use HardSoftScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoft.HardSoftScore.getSoftScore()
    Use HardSoftScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScore.getHardScore()
    Use HardSoftBigDecimalScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftbigdecimal.HardSoftBigDecimalScore.getSoftScore()
    Use HardSoftBigDecimalScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftlong.HardSoftLongScore.getHardScore()
    Use HardSoftLongScore.hardScore() instead.
    ai.timefold.solver.core.api.score.buildin.hardsoftlong.HardSoftLongScore.getSoftScore()
    Use HardSoftLongScore.softScore() instead.
    ai.timefold.solver.core.api.score.buildin.simple.SimpleScore.getScore()
    Use SimpleScore.score() instead.
    ai.timefold.solver.core.api.score.buildin.simplebigdecimal.SimpleBigDecimalScore.getScore()
    Use SimpleBigDecimalScore.score() instead.
    ai.timefold.solver.core.api.score.buildin.simplelong.SimpleLongScore.getScore()
    Use SimpleLongScore.score() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintId()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintName()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getConstraintPackage()
    Prefer ConstraintMatch.getConstraintRef() instead.
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch.getJustificationList()
    Prefer ConstraintMatch.getJustification() or ConstraintMatch.getIndictedObjectList().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.composeConstraintId(String, String)
    Prefer ConstraintRef.of(String, String).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintId()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintName()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.ConstraintMatchTotal.getConstraintPackage()
    Prefer ConstraintMatchTotal.getConstraintRef().
    ai.timefold.solver.core.api.score.constraint.Indictment.getJustification()
    Prefer Indictment.getIndictedObject().
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterEntityAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterEntityRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemFactAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemFactRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.afterProblemPropertyChanged(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeEntityAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeEntityRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemFactAdded(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemFactRemoved(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.director.ScoreDirector.beforeProblemPropertyChanged(Object)
    Calling this method by user code is not recommended and will lead to unforeseen consequences. Use ProblemChange instead.
    ai.timefold.solver.core.api.score.IBendableScore.getHardLevelsSize()
    Use IBendableScore.hardLevelsSize() instead.
    ai.timefold.solver.core.api.score.IBendableScore.getLevelsSize()
    Use IBendableScore.levelsSize() instead.
    ai.timefold.solver.core.api.score.IBendableScore.getSoftLevelsSize()
    Use IBendableScore.softLevelsSize() instead.
    ai.timefold.solver.core.api.score.Score.getInitScore()
    Use Score.initScore() instead.
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impact(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impact(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impact(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impact(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurable(String, String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.impactConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.impactLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.impactLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalize(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalize(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalize(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalize(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurable(String, String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.penalizeConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.penalizeLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.penalizeLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.reward(String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.reward(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.reward(String, String, Score<?>, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.reward(Score, ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardBigDecimal(String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardBigDecimal(String, String, Score<?>, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardBigDecimal(Score, BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurable(String, String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurable(String, ToIntBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurable(ToIntBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableBigDecimal(String, String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableBigDecimal(String, BiFunction<A, B, BigDecimal>)
    Prefer BiConstraintStream.rewardConfigurableBigDecimal(BiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableLong(String, String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardConfigurableLong(String, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardConfigurableLong(ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardLong(String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream.rewardLong(String, String, Score<?>, ToLongBiFunction<A, B>)
    Prefer BiConstraintStream.rewardLong(Score, ToLongBiFunction).
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintFactory()
    for removal as it is not necessary on the public API.
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintId()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintName()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.Constraint.getConstraintPackage()
    Prefer Constraint.getConstraintRef().
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(QuadFunction<A, B, C, D, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(QuadFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(TriFunction<A, B, C, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(TriFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(Comparator<? super A>)
    Deprecated in favor of ConstraintCollectors.max(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(BiFunction<A, B, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(BiFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.max(Function<A, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.max(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(QuadFunction<A, B, C, D, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(QuadFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(TriFunction<A, B, C, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(TriFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(Comparator<? super A>)
    Deprecated in favor of ConstraintCollectors.min(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(BiFunction<A, B, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(BiFunction, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.min(Function<A, Mapped>, Comparator<? super Mapped>)
    Deprecated in favor of ConstraintCollectors.min(Function, Function), as this method can lead to unavoidable score corruptions.
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.toCollection(QuadFunction<A, B, C, D, Mapped>, IntFunction<Result>)
    Prefer ConstraintCollectors.toList(QuadFunction), ConstraintCollectors.toSet(QuadFunction) or ConstraintCollectors.toSortedSet(QuadFunction)
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.toCollection(TriFunction<A, B, C, Mapped>, IntFunction<Result>)
    Prefer ConstraintCollectors.toList(TriFunction), ConstraintCollectors.toSet(TriFunction) or ConstraintCollectors.toSortedSet(TriFunction)
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.toCollection(BiFunction<A, B, Mapped>, IntFunction<Result>)
    Prefer ConstraintCollectors.toList(BiFunction), ConstraintCollectors.toSet(BiFunction) or ConstraintCollectors.toSortedSet(BiFunction)
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.toCollection(Function<A, Mapped>, IntFunction<Result>)
    Prefer ConstraintCollectors.toList(Function), ConstraintCollectors.toSet(Function) or ConstraintCollectors.toSortedSet(Function)
    ai.timefold.solver.core.api.score.stream.ConstraintCollectors.toCollection(IntFunction<Result>)
    Prefer ConstraintCollectors.toList(), ConstraintCollectors.toSet() or ConstraintCollectors.toSortedSet()
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.from(Class<A>)
    This method is deprecated in favor of ConstraintFactory.forEach(Class), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUnfiltered(Class<A>)
    Prefer ConstraintFactory.forEachIncludingNullVars(Class).
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>)
    Prefer ConstraintFactory.forEachUniquePair(Class), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>...)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner...), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintFactory.fromUniquePair(Class<A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>, BiJoiner<A, A>)
    Prefer ConstraintFactory.forEachUniquePair(Class, BiJoiner, BiJoiner, BiJoiner, BiJoiner), which exhibits the same behavior for both nullable and non-nullable planning variables.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.impact(String, Score<?>)
    Prefer UniConstraintStream.impact(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.impact(String, String, Score<?>)
    Prefer UniConstraintStream.impact(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalize(String, Score<?>)
    Prefer UniConstraintStream.penalize(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalize(String, String, Score<?>)
    Prefer UniConstraintStream.penalize(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalizeConfigurable(String)
    Prefer UniConstraintStream.penalizeConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.penalizeConfigurable(String, String)
    Prefer UniConstraintStream.penalizeConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.reward(String, Score<?>)
    Prefer UniConstraintStream.reward(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.reward(String, String, Score<?>)
    Prefer UniConstraintStream.reward(Score) and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.rewardConfigurable(String)
    Prefer UniConstraintStream.rewardConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.ConstraintStream.rewardConfigurable(String, String)
    Prefer UniConstraintStream.rewardConfigurable() and equivalent bi/tri/... overloads.
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impact(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impact(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impact(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impact(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.impactConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.impactLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.impactLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalize(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalize(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalize(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalize(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.penalizeConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.penalizeLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.penalizeLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.reward(String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.reward(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.reward(String, String, Score<?>, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.reward(Score, ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardBigDecimal(String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardBigDecimal(String, String, Score<?>, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardBigDecimal(Score, QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurable(String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurable(String, String, ToIntQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurable(ToIntQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableBigDecimal(String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableBigDecimal(String, String, QuadFunction<A, B, C, D, BigDecimal>)
    Prefer QuadConstraintStream.rewardConfigurableBigDecimal(QuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableLong(String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardConfigurableLong(String, String, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardConfigurableLong(ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardLong(String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream.rewardLong(String, String, Score<?>, ToLongQuadFunction<A, B, C, D>)
    Prefer QuadConstraintStream.rewardLong(Score, ToLongQuadFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impact(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impact(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impact(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impact(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.impactConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.impactLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.impactLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalize(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalize(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalize(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalize(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.penalizeConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.penalizeLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.penalizeLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.reward(String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.reward(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.reward(String, String, Score<?>, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.reward(Score, ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardBigDecimal(String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardBigDecimal(String, String, Score<?>, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardBigDecimal(Score, TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurable(String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurable(String, String, ToIntTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurable(ToIntTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableBigDecimal(String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableBigDecimal(String, String, TriFunction<A, B, C, BigDecimal>)
    Prefer TriConstraintStream.rewardConfigurableBigDecimal(TriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableLong(String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardConfigurableLong(String, String, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardConfigurableLong(ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardLong(String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream.rewardLong(String, String, Score<?>, ToLongTriFunction<A, B, C>)
    Prefer TriConstraintStream.rewardLong(Score, ToLongTriFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impact(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.impact(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impact(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.impact(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.impactConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.impactConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.impactConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.impactConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.impactConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.impactLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.impactLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.impactLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalize(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.penalize(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalize(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.penalize(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.penalizeConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.penalizeLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.penalizeLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.reward(String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.reward(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.reward(String, String, Score<?>, ToIntFunction<A>)
    Prefer UniConstraintStream.reward(Score, ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardBigDecimal(String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardBigDecimal(String, String, Score<?>, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardBigDecimal(Score, Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurable(String, String, ToIntFunction<A>)
    Prefer UniConstraintStream.rewardConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurable(String, ToIntFunction<A>)
    Prefer UniConstraintStream.rewardConfigurable(ToIntFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableBigDecimal(String, String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableBigDecimal(String, Function<A, BigDecimal>)
    Prefer UniConstraintStream.rewardConfigurableBigDecimal(Function).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableLong(String, String, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardConfigurableLong(String, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardConfigurableLong(ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardLong(String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.score.stream.uni.UniConstraintStream.rewardLong(String, String, Score<?>, ToLongFunction<A>)
    Prefer UniConstraintStream.rewardLong(Score, ToLongFunction).
    ai.timefold.solver.core.api.solver.event.BestSolutionChangedEvent.isEveryProblemFactChangeProcessed()
    Prefer BestSolutionChangedEvent.isEveryProblemChangeProcessed().
    ai.timefold.solver.core.api.solver.Solver.addProblemFactChange(ProblemFactChange<Solution_>)
    Prefer Solver.addProblemChange(ProblemChange).
    ai.timefold.solver.core.api.solver.Solver.addProblemFactChanges(List<ProblemFactChange<Solution_>>)
    Prefer Solver.addProblemChanges(List).
    ai.timefold.solver.core.api.solver.Solver.isEveryProblemFactChangeProcessed()
    Prefer Solver.isEveryProblemChangeProcessed().
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solve(ProblemId_, Solution_, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder()
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.api.solver.SolverManager.solveAndListen(ProblemId_, Function<? super ProblemId_, ? extends Solution_>, Consumer<? super Solution_>, Consumer<? super Solution_>, BiConsumer<? super ProblemId_, ? super Throwable>)
    It is recommended to use SolverManager.solveBuilder() while also providing a consumer for the best solution
    ai.timefold.solver.core.config.heuristic.selector.move.composite.CartesianProductMoveSelectorConfig.getMoveSelectorConfigList()
    Prefer CartesianProductMoveSelectorConfig.getMoveSelectorList().
    ai.timefold.solver.core.config.heuristic.selector.move.composite.CartesianProductMoveSelectorConfig.setMoveSelectorConfigList(List<MoveSelectorConfig>)
    Prefer CartesianProductMoveSelectorConfig.setMoveSelectorList(List).
    ai.timefold.solver.core.config.heuristic.selector.move.composite.UnionMoveSelectorConfig.getMoveSelectorConfigList()
    Prefer UnionMoveSelectorConfig.getMoveSelectorList().
    ai.timefold.solver.core.config.heuristic.selector.move.composite.UnionMoveSelectorConfig.setMoveSelectorConfigList(List<MoveSelectorConfig>)
    Prefer UnionMoveSelectorConfig.setMoveSelectorList(List).
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.getMaximumSubListSize()
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.getMinimumSubListSize()
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.setMaximumSubListSize(Integer)
    The maximumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMaximumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListChangeMoveSelectorConfig.setMinimumSubListSize(Integer)
    The minimumSubListSize on the SubListChangeMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMinimumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.getMaximumSubListSize()
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMaximumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.getMinimumSubListSize()
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.getMinimumSubListSize() instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.setMaximumSubListSize(Integer)
    The maximumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMaximumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.heuristic.selector.move.generic.list.SubListSwapMoveSelectorConfig.setMinimumSubListSize(Integer)
    The minimumSubListSize on the SubListSwapMoveSelectorConfig is deprecated and will be removed in a future major version of Timefold. Use SubListSelectorConfig.setMinimumSubListSize(Integer) instead.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.getFadingValueTabuRatio()
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.getValueTabuRatio()
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.setFadingValueTabuRatio(Double)
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.localsearch.decider.acceptor.LocalSearchAcceptorConfig.setValueTabuRatio(Double)
    Deprecated on account of never having worked in the first place.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.getScoreDrlList()
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.setScoreDrlList(List<String>)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.withScoreDrlList(List<String>)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.score.director.ScoreDirectorFactoryConfig.withScoreDrls(String...)
    Score DRL is deprecated and will be removed in a future major version of Timefold. See DRL to Constraint Streams migration recipe.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.getTerminationClass()
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.setTerminationClass(Class<? extends Termination>)
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.config.solver.termination.TerminationConfig.withTerminationClass(Class<? extends Termination>)
    A custom terminationClass is deprecated and will be removed in a future major version of Timefold.
    ai.timefold.solver.core.impl.domain.entity.descriptor.EntityDescriptor.getIsInitializedPredicate()
    Prefer EntityDescriptor.getHasNoNullVariables().
  • Deprecated Constructors
    Constructor
    Description
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(Constraint, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, String, ConstraintJustification, Collection<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.api.score.constraint.ConstraintMatch(String, String, List<Object>, Score_)
    Prefer ConstraintMatch(ConstraintRef, ConstraintJustification, Collection, Score).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(ConstraintRef)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(Constraint, Score_)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(String, String)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
    ai.timefold.solver.core.impl.score.constraint.DefaultConstraintMatchTotal(String, String, Score_)
    Prefer DefaultConstraintMatchTotal(ConstraintRef, Score_).
  • Deprecated Enum Constants
    Enum Constant
    Description
    ai.timefold.solver.core.api.score.stream.ConstraintStreamImplType.DROOLS
    in favor of ConstraintStreamImplType.BAVET.
    ai.timefold.solver.core.config.score.definition.ScoreDefinitionType.HARD_SOFT_DOUBLE
    ai.timefold.solver.core.config.score.definition.ScoreDefinitionType.SIMPLE_DOUBLE
  • Deprecated Annotation Interface Elements
    Annotation Interface Element
    Description
    ai.timefold.solver.core.api.domain.solution.PlanningScore.scoreDefinitionClass()
    Support for custom scores is deprecated and will be removed in Timefold 9.0.

Copyright © 2006–2024. All rights reserved.