Uses of Interface
org.optaplanner.core.api.function.TriFunction
Package
Description
The
ConstraintStream
API for bi-tuples.The
ConstraintStream
API for tri-tuples.-
Uses of TriFunction in org.optaplanner.core.api.score.stream
Modifier and TypeMethodDescriptionstatic <A,
B, C> TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.averageBigDecimal
(TriFunction<A, B, C, BigDecimal> groupValueMapping) As defined byConstraintCollectors.averageBigDecimal(Function)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.averageBigInteger
(TriFunction<A, B, C, BigInteger> groupValueMapping) As defined byConstraintCollectors.averageBigInteger(Function)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, Duration> ConstraintCollectors.averageDuration
(TriFunction<A, B, C, Duration> groupValueMapping) As defined byConstraintCollectors.average(ToIntFunction)
.static <A,
B, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
BiConstraintCollector<A,B, ?, Result_> ConstraintCollectors.compose
(BiConstraintCollector<A, B, SubResultContainer1_, SubResult1_> subCollector1, BiConstraintCollector<A, B, SubResultContainer2_, SubResult2_> subCollector2, BiConstraintCollector<A, B, SubResultContainer3_, SubResult3_> subCollector3, TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,
B, C, D, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
QuadConstraintCollector<A,B, C, D, ?, Result_> ConstraintCollectors.compose
(QuadConstraintCollector<A, B, C, D, SubResultContainer1_, SubResult1_> subCollector1, QuadConstraintCollector<A, B, C, D, SubResultContainer2_, SubResult2_> subCollector2, QuadConstraintCollector<A, B, C, D, SubResultContainer3_, SubResult3_> subCollector3, TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,
B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
TriConstraintCollector<A,B, C, ?, Result_> ConstraintCollectors.compose
(TriConstraintCollector<A, B, C, SubResultContainer1_, SubResult1_> subCollector1, TriConstraintCollector<A, B, C, SubResultContainer2_, SubResult2_> subCollector2, TriConstraintCollector<A, B, C, SubResultContainer3_, SubResult3_> subCollector3, TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,
Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
UniConstraintCollector<A,?, Result_> ConstraintCollectors.compose
(UniConstraintCollector<A, SubResultContainer1_, SubResult1_> subCollector1, UniConstraintCollector<A, SubResultContainer2_, SubResult2_> subCollector2, UniConstraintCollector<A, SubResultContainer3_, SubResult3_> subCollector3, TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) Returns a constraint collector the result of which is a composition of other constraint collectors.static <A,
B, C> TriConstraintCollector<A, B, C, ?, Integer> ConstraintCollectors.countDistinct
(TriFunction<A, B, C, ?> groupValueMapping) As defined byConstraintCollectors.countDistinct(Function)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, Long> ConstraintCollectors.countDistinctLong
(TriFunction<A, B, C, ?> groupValueMapping) As defined byConstraintCollectors.countDistinct(Function)
.static <A,
B, C, D, Property_>
QuadJoiner<A,B, C, D> Joiners.equal
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byJoiners.equal(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> Joiners.greaterThan
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byJoiners.greaterThan(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> Joiners.greaterThanOrEqual
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byJoiners.greaterThanOrEqual(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> Joiners.lessThan
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byJoiners.lessThan(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> Joiners.lessThanOrEqual
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byJoiners.lessThanOrEqual(Function, Function)
.static <A,
B, C, Mapped extends Comparable<? super Mapped>>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.max
(TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.max(Function)
.static <A,
B, C, Mapped>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.max
(TriFunction<A, B, C, Mapped> groupValueMapping, Comparator<? super Mapped> comparator) As defined byConstraintCollectors.max(Function)
, only with a customComparator
.static <A,
B, C, Mapped extends Comparable<? super Mapped>>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.min
(TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.min(Function)
.static <A,
B, C, Mapped>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.min
(TriFunction<A, B, C, Mapped> groupValueMapping, Comparator<? super Mapped> comparator) As defined byConstraintCollectors.min(Function)
, only with a customComparator
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> Joiners.overlapping
(TriFunction<A, B, C, Property_> leftStartMapping, TriFunction<A, B, C, Property_> leftEndMapping, Function<D, Property_> rightStartMapping, Function<D, Property_> rightEndMapping) As defined byJoiners.overlapping(Function, Function)
.static <A,
B, C, Result>
TriConstraintCollector<A,B, C, ?, Result> ConstraintCollectors.sum
(TriFunction<? super A, ? super B, ? super C, Result> groupValueMapping, Result zero, BinaryOperator<Result> adder, BinaryOperator<Result> subtractor) As defined byConstraintCollectors.sum(ToIntFunction)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.sumBigDecimal
(TriFunction<? super A, ? super B, ? super C, BigDecimal> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, BigInteger> ConstraintCollectors.sumBigInteger
(TriFunction<? super A, ? super B, ? super C, BigInteger> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, Duration> ConstraintCollectors.sumDuration
(TriFunction<? super A, ? super B, ? super C, Duration> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction)
.static <A,
B, C> TriConstraintCollector<A, B, C, ?, Period> ConstraintCollectors.sumPeriod
(TriFunction<? super A, ? super B, ? super C, Period> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction)
.static <A,
B, C, Mapped, Result extends Collection<Mapped>>
TriConstraintCollector<A,B, C, ?, Result> ConstraintCollectors.toCollection
(TriFunction<A, B, C, Mapped> groupValueMapping, IntFunction<Result> collectionFunction) Deprecated.static <A,
B, C, Mapped>
TriConstraintCollector<A,B, C, ?, List<Mapped>> ConstraintCollectors.toList
(TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toList(Function)
.static <A,
B, C, Key, Value>
TriConstraintCollector<A,B, C, ?, Map<Key, Set<Value>>> ConstraintCollectors.toMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper) As defined byConstraintCollectors.toMap(Function, Function)
.static <A,
B, C, Key, Value>
TriConstraintCollector<A,B, C, ?, Map<Key, Value>> ConstraintCollectors.toMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, BinaryOperator<Value> mergeFunction) static <A,
B, C, Key, Value, ValueSet extends Set<Value>>
TriConstraintCollector<A,B, C, ?, Map<Key, ValueSet>> ConstraintCollectors.toMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, IntFunction<ValueSet> valueSetFunction) As defined byConstraintCollectors.toMap(Function, Function, IntFunction)
.static <A,
B, C, Mapped>
TriConstraintCollector<A,B, C, ?, Set<Mapped>> ConstraintCollectors.toSet
(TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toSet(Function)
.static <A,
B, C, Key extends Comparable<? super Key>, Value>
TriConstraintCollector<A,B, C, ?, SortedMap<Key, Set<Value>>> ConstraintCollectors.toSortedMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper) As defined byConstraintCollectors.toSortedMap(Function, Function)
.static <A,
B, C, Key extends Comparable<? super Key>, Value>
TriConstraintCollector<A,B, C, ?, SortedMap<Key, Value>> ConstraintCollectors.toSortedMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, BinaryOperator<Value> mergeFunction) static <A,
B, C, Key extends Comparable<? super Key>, Value, ValueSet extends Set<Value>>
TriConstraintCollector<A,B, C, ?, SortedMap<Key, ValueSet>> ConstraintCollectors.toSortedMap
(TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, IntFunction<ValueSet> valueSetFunction) static <A,
B, C, Mapped extends Comparable<? super Mapped>>
TriConstraintCollector<A,B, C, ?, SortedSet<Mapped>> ConstraintCollectors.toSortedSet
(TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toSortedSet(Function)
.static <A,
B, C, Mapped>
TriConstraintCollector<A,B, C, ?, SortedSet<Mapped>> ConstraintCollectors.toSortedSet
(TriFunction<A, B, C, Mapped> groupValueMapping, Comparator<? super Mapped> comparator) As defined byConstraintCollectors.toSortedSet(Function, Comparator)
. -
Uses of TriFunction in org.optaplanner.core.api.score.stream.bi
Modifier and TypeMethodDescriptionBiConstraintCollector.accumulator()
A lambda that extracts data from the matched facts, accumulates it in the result container and returns an undo operation for that accumulation.Modifier and TypeMethodDescription<ConstraintJustification_ extends ConstraintJustification>
BiConstraintBuilder<A,B, Score_> BiConstraintBuilder.justifyWith
(TriFunction<A, B, Score_, ConstraintJustification_> justificationMapping) Sets a custom function to apply on a constraint match to justify it. -
Uses of TriFunction in org.optaplanner.core.api.score.stream.tri
Modifier and TypeMethodDescription<GroupKey_>
UniConstraintStream<GroupKey_>TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKey_> groupKeyMapping) Convert theTriConstraintStream
to aUniConstraintStream
, containing the set of tuples resulting from applying the group key mapping function on all tuples of the original stream.<GroupKey_,
ResultContainer_, Result_>
BiConstraintStream<GroupKey_,Result_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Convert theTriConstraintStream
to aBiConstraintStream
, consisting of unique tuples.<GroupKey_,
ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) Convert theTriConstraintStream
to aTriConstraintStream
, consisting of unique tuples with three facts.<GroupKey_,
ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Convert theTriConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<GroupKeyA_,
GroupKeyB_>
BiConstraintStream<GroupKeyA_,GroupKeyB_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping) Convert theTriConstraintStream
to aBiConstraintStream
, consisting of unique tuples.<GroupKeyA_,
GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping) Convert theTriConstraintStream
to aTriConstraintStream
, consisting of unique tuples with three facts.<GroupKeyA_,
GroupKeyB_, GroupKeyC_, GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, TriFunction<A, B, C, GroupKeyD_> groupKeyDMapping) Convert theTriConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<GroupKeyA_,
GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)
andTriConstraintStream.groupBy(TriConstraintCollector)
.<GroupKeyA_,
GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)
andTriConstraintStream.groupBy(TriConstraintCollector)
.<GroupKeyA_,
GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)
andTriConstraintStream.groupBy(TriConstraintCollector)
.default Constraint
TriConstraintStream.impactBigDecimal
(String constraintPackage, String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.impactBigDecimal
(String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.<Score_ extends Score<Score_>>
TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.impactBigDecimal
(Score_ constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.impact(Score, ToIntTriFunction)
, with an impact of typeBigDecimal
.default Constraint
TriConstraintStream.impactConfigurableBigDecimal
(String constraintPackage, String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.impactConfigurableBigDecimal
(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.TriConstraintBuilder<A,
B, C, ?> TriConstraintStream.impactConfigurableBigDecimal
(TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.impactConfigurable(ToIntTriFunction)
, with an impact of type BigDecimal.TriConstraintBuilder.indictWith
(TriFunction<A, B, C, Collection<Object>> indictedObjectsMapping) Sets a custom function to mark any object returned by it as responsible for causing the constraint to match.<ResultA_> UniConstraintStream<ResultA_>
TriConstraintStream.map
(TriFunction<A, B, C, ResultA_> mapping) As defined byUniConstraintStream.map(Function)
.default Constraint
TriConstraintStream.penalizeBigDecimal
(String constraintPackage, String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.penalizeBigDecimal
(String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.<Score_ extends Score<Score_>>
TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.penalizeBigDecimal
(Score_ constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.penalize(Score, ToIntTriFunction)
, with a penalty of typeBigDecimal
.default Constraint
TriConstraintStream.penalizeConfigurableBigDecimal
(String constraintPackage, String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.penalizeConfigurableBigDecimal
(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.TriConstraintBuilder<A,
B, C, ?> TriConstraintStream.penalizeConfigurableBigDecimal
(TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.penalizeConfigurable(ToIntTriFunction)
, with a penalty of typeBigDecimal
.default Constraint
TriConstraintStream.rewardBigDecimal
(String constraintPackage, String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.rewardBigDecimal
(String constraintName, Score<?> constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.<Score_ extends Score<Score_>>
TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.rewardBigDecimal
(Score_ constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.reward(Score, ToIntTriFunction)
, with a penalty of typeBigDecimal
.default Constraint
TriConstraintStream.rewardConfigurableBigDecimal
(String constraintPackage, String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default Constraint
TriConstraintStream.rewardConfigurableBigDecimal
(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.TriConstraintBuilder<A,
B, C, ?> TriConstraintStream.rewardConfigurableBigDecimal
(TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.rewardConfigurable(ToIntTriFunction)
, with a penalty of typeBigDecimal
. -
Uses of TriFunction in org.optaplanner.core.impl.score.stream
Modifier and TypeMethodDescription<A,
B, C, D, Property_>
QuadJoiner<A,B, C, D> JoinerService.newQuadJoiner
(TriFunction<A, B, C, Property_> leftMapping, JoinerType joinerType, Function<D, Property_> rightMapping)
ConstraintCollectors.toList(TriFunction)
,ConstraintCollectors.toSet(TriFunction)
orConstraintCollectors.toSortedSet(TriFunction)