## Uses of Interface
org.optaplanner.core.api.function.ToIntTriFunction

- Packages that use ToIntTriFunction
  Package | Description
  --- | ---
  org.optaplanner.core.api.score.stream | The `ConstraintStream` API: a way to define constraints for `Score` calculation.
  org.optaplanner.core.api.score.stream.tri | The `ConstraintStream` API for tri-tuples.
  org.optaplanner.core.impl.score.stream.bavet.tri |
  org.optaplanner.core.impl.score.stream.drools.tri |
  org.optaplanner.core.impl.score.stream.tri |

- - ### Uses of ToIntTriFunction in org.optaplanner.core.api.score.stream

    Methods in org.optaplanner.core.api.score.stream with parameters of type ToIntTriFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <A,​B,​C> TriConstraintCollector<A,​B,​C,​?,​Integer>` | ConstraintCollectors.`sum​(ToIntTriFunction<? super A,​? super B,​? super C> groupValueMapping)` |

  - ### Uses of ToIntTriFunction in org.optaplanner.core.api.score.stream.tri

    Methods in org.optaplanner.core.api.score.stream.tri with parameters of type ToIntTriFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `Constraint` | TriConstraintStream.`impact​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.impact(String, Score, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`impact​(String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | Positively or negatively impact the `Score` by the constraintWeight multiplied by the match weight.
    `Constraint` | TriConstraintStream.`impactConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.impactConfigurable(String, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`impactConfigurable​(String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | Positively or negatively impact the `Score` by the `ConstraintWeight` for each match.
    `Constraint` | TriConstraintStream.`penalize​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.penalize(String, Score, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`penalize​(String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | Negatively impact the `Score`: subtract the constraintWeight multiplied by the match weight.
    `Constraint` | TriConstraintStream.`penalizeConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.penalizeConfigurable(String, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`penalizeConfigurable​(String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | Negatively impact the `Score`: subtract the `ConstraintWeight` multiplied by the match weight.
    `Constraint` | TriConstraintStream.`reward​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.reward(String, Score, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`reward​(String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` | Positively impact the `Score`: add the constraintWeight multiplied by the match weight.
    `Constraint` | TriConstraintStream.`rewardConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | As defined by `TriConstraintStream.rewardConfigurable(String, ToIntTriFunction)`.
    `default Constraint` | TriConstraintStream.`rewardConfigurable​(String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` | Positively impact the `Score`: add the `ConstraintWeight` multiplied by the match weight.

  - ### Uses of ToIntTriFunction in org.optaplanner.core.impl.score.stream.bavet.tri

    Methods in org.optaplanner.core.impl.score.stream.bavet.tri with parameters of type ToIntTriFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `Constraint` | BavetAbstractTriConstraintStream.`impactScore​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |
    `Constraint` | BavetAbstractTriConstraintStream.`impactScoreConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |

    Constructors in org.optaplanner.core.impl.score.stream.bavet.tri with parameters of type ToIntTriFunction
    Constructor | Description
    --- | ---
    `BavetScoringTriConstraintStream​(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,​A,​B,​C> parent, BavetConstraint<Solution_> constraint, ToIntTriFunction<A,​B,​C> intMatchWeigher)` |

  - ### Uses of ToIntTriFunction in org.optaplanner.core.impl.score.stream.drools.tri

    Methods in org.optaplanner.core.impl.score.stream.drools.tri with parameters of type ToIntTriFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<org.drools.model.RuleItemBuilder<?>>` | DroolsTriCondition.`completeWithScoring​(DroolsConstraint<?> constraint, org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal, ToIntTriFunction<A,​B,​C> matchWeighter)` |
    `Constraint` | DroolsAbstractTriConstraintStream.`impactScore​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |
    `Constraint` | DroolsAbstractTriConstraintStream.`impactScoreConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |

    Constructors in org.optaplanner.core.impl.score.stream.drools.tri with parameters of type ToIntTriFunction
    Constructor | Description
    --- | ---
    `DroolsScoringTriConstraintStream​(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractTriConstraintStream<Solution_,​A,​B,​C> parent, ToIntTriFunction<A,​B,​C> intMatchWeigher)` |

  - ### Uses of ToIntTriFunction in org.optaplanner.core.impl.score.stream.tri

    Methods in org.optaplanner.core.impl.score.stream.tri with parameters of type ToIntTriFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `default Constraint` | InnerTriConstraintStream.`impact​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` |
    `default Constraint` | InnerTriConstraintStream.`impactConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` |
    `Constraint` | InnerTriConstraintStream.`impactScore​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |
    `Constraint` | InnerTriConstraintStream.`impactScoreConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher, ScoreImpactType impactType)` |
    `default Constraint` | InnerTriConstraintStream.`penalize​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` |
    `default Constraint` | InnerTriConstraintStream.`penalizeConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` |
    `default Constraint` | InnerTriConstraintStream.`reward​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToIntTriFunction<A,​B,​C> matchWeigher)` |
    `default Constraint` | InnerTriConstraintStream.`rewardConfigurable​(String constraintPackage, String constraintName, ToIntTriFunction<A,​B,​C> matchWeigher)` |