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

- Packages that use ToLongQuadFunction
  Package | Description
  --- | ---
  org.optaplanner.core.api.score.stream |
  org.optaplanner.core.api.score.stream.quad | The `ConstraintStream` API for four matched facts.
  org.optaplanner.core.impl.score.stream.drools.common |
  org.optaplanner.core.impl.score.stream.drools.common.consequences |
  org.optaplanner.core.impl.score.stream.drools.quad |
  org.optaplanner.core.impl.score.stream.quad |

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

    Methods in org.optaplanner.core.api.score.stream with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <A,​B,​C,​D> QuadConstraintCollector<A,​B,​C,​D,​?,​Long>` | ConstraintCollectors.`sumLong​(ToLongQuadFunction<? super A,​? super B,​? super C,​? super D> groupValueMapping)` | As defined by `ConstraintCollectors.sum(ToIntFunction)`.

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

    Methods in org.optaplanner.core.api.score.stream.quad with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `Constraint` | QuadConstraintStream.`impactConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.impactConfigurableLong(String, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`impactConfigurableLong​(String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Positively or negatively impact the `Score` by the `ConstraintWeight` for each match.
    `Constraint` | QuadConstraintStream.`impactLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.impactLong(String, Score, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`impactLong​(String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Positively or negatively impact the `Score` by the constraintWeight multiplied by the match weight.
    `Constraint` | QuadConstraintStream.`penalizeConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.penalizeConfigurableLong(String, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`penalizeConfigurableLong​(String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Negatively impact the `Score`: subtract the `ConstraintWeight` multiplied by the match weight.
    `Constraint` | QuadConstraintStream.`penalizeLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.penalizeLong(String, Score, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`penalizeLong​(String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Negatively impact the `Score`: subtract the constraintWeight multiplied by the match weight.
    `Constraint` | QuadConstraintStream.`rewardConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.rewardConfigurableLong(String, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`rewardConfigurableLong​(String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Positively impact the `Score`: add the `ConstraintWeight` multiplied by the match weight.
    `Constraint` | QuadConstraintStream.`rewardLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | As defined by `QuadConstraintStream.rewardLong(String, Score, ToLongQuadFunction)`.
    `default Constraint` | QuadConstraintStream.`rewardLong​(String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` | Positively impact the `Score`: add the constraintWeight multiplied by the match weight.

  - ### Uses of ToLongQuadFunction in org.optaplanner.core.impl.score.stream.drools.common

    Methods in org.optaplanner.core.impl.score.stream.drools.common with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `<A,​B,​C,​D> QuadConstraintConsequence` | ConstraintGraph.`impact​(QuadConstraintGraphNode parent, ToLongQuadFunction<A,​B,​C,​D> matchWeighter)` |

  - ### Uses of ToLongQuadFunction in org.optaplanner.core.impl.score.stream.drools.common.consequences

    Methods in org.optaplanner.core.impl.score.stream.drools.common.consequences with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <A,​B,​C,​D> QuadConstraintConsequence` | ConstraintConsequence.`create​(QuadConstraintGraphNode terminalNode, ToLongQuadFunction<A,​B,​C,​D> matchWeighter)` |

  - ### Uses of ToLongQuadFunction in org.optaplanner.core.impl.score.stream.drools.quad

    Methods in org.optaplanner.core.impl.score.stream.drools.quad with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `Constraint` | DroolsAbstractQuadConstraintStream.`impactScoreConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher, ScoreImpactType impactType)` |
    `Constraint` | DroolsAbstractQuadConstraintStream.`impactScoreLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher, ScoreImpactType impactType)` |

  - ### Uses of ToLongQuadFunction in org.optaplanner.core.impl.score.stream.quad

    Methods in org.optaplanner.core.impl.score.stream.quad with parameters of type ToLongQuadFunction
    Modifier and Type | Method | Description
    --- | --- | ---
    `default Constraint` | InnerQuadConstraintStream.`impactConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |
    `default Constraint` | InnerQuadConstraintStream.`impactLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |
    `Constraint` | InnerQuadConstraintStream.`impactScoreConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher, ScoreImpactType impactType)` |
    `Constraint` | InnerQuadConstraintStream.`impactScoreLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher, ScoreImpactType impactType)` |
    `default Constraint` | InnerQuadConstraintStream.`penalizeConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |
    `default Constraint` | InnerQuadConstraintStream.`penalizeLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |
    `default Constraint` | InnerQuadConstraintStream.`rewardConfigurableLong​(String constraintPackage, String constraintName, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |
    `default Constraint` | InnerQuadConstraintStream.`rewardLong​(String constraintPackage, String constraintName, Score<?> constraintWeight, ToLongQuadFunction<A,​B,​C,​D> matchWeigher)` |